• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

sayıyı metne yada metni sayıya

Katılım
29 Ocak 2006
Mesajlar
138
Excel Vers. ve Dili
2003 türkçe
herkese iyi akşamlar
bu sitede sayıyı metne çevirme ile ilgili soru ve cevapları inceledim. sayıyı metne çevirmek için =yaz(A1) yada =yazıyla(A1;0) gibi açıklamalar var.ben bunları denediğimde #AD hatası alıyorum.Neden?
 
Aşağıdaki kodları VBA'da bir modül içine yapıştır. Sayfanda diyelim ki,A1 hücresinde 125 sayısı var. B1 hücresine =yaz(A1) yaz, hücreden çık. B1 hücresinde "yüzyirmi beş" metnini göreceksin.

Function yaz$(sayi)

Dim b$(9)
Dim y$(9)
Dim m$(4)
Dim v(15)
Dim c(3)

b$(0) = ""
b$(1) = "Bir"
b$(2) = "İki"
b$(3) = "Üç"
b$(4) = "Dört"
b$(5) = "Beş"
b$(6) = "Altı"
b$(7) = "Yedi"
b$(8) = "Sekiz"
b$(9) = "Dokuz"

y$(0) = ""
y$(1) = "On"
y$(2) = "Yirmi"
y$(3) = "Otuz"
y$(4) = "Kırk"
y$(5) = "Elli"
y$(6) = "Altmış"
y$(7) = "Yetmiş"
y$(8) = "Seksen"
y$(9) = "Doksan"

m$(0) = "Trilyon"
m$(1) = "Milyar"
m$(2) = "Milyon"
m$(3) = "Bin"
m$(4) = ""

a$ = Str(sayi)

If Left$(a$, 1) = " " Then pozitif = 1 Else pozitif = 0
a$ = Right$(a$, Len(a$) - 1)
For x = 1 To Len(a$)
If (Asc(Mid$(a$, x, 1)) > Asc("9")) Or (Asc(Mid$(a$, x, 1)) _
< Asc("0")) Then GoTo hata
Next x

If Len(a$) > 15 Then GoTo hata
a$ = String(15 - Len(a$), "0") + a$

For x = 1 To 15
v(x) = Val(Mid$(a$, x, 1))
Next x

s$ = ""
For x = 0 To 4
c(1) = v((x * 3) + 1)
c(2) = v((x * 3) + 2)
c(3) = v((x * 3) + 3)
If c(1) = 0 Then
e$ = ""
ElseIf c(1) = 1 Then
e$ = "Yüz"
Else
e$ = b$(c(1)) + "Yüz"
End If
e$ = e$ + y$(c(2)) + b$(c(3))
If e$ <> "" Then e$ = e$ + m$(x)
If (x = 3) And (e$ = "BirBin") Then e$ = "Bin"
s$ = s$ + e$
Next x

If s$ = "" Then s$ = "Sıfır"
If pozitif = 0 Then s$ = "Eksi" + s$

yaz$ = s$
GoTo tamam
hata: yaz$ = "Hata"
tamam:
End Function
 
bu uygulamanın bir de, virgüllü (ondalıklı) değerleri yazanı var...Bilginize...
 
vba nedir arkada&#351;&#305;m bulamad&#305;m... tam olarak nerden yap&#305;&#351;t&#305;racam yard&#305;mc&#305; olurmusun...office 2007 t&#252;rk&#231;e kullan&#305;yorum.
 
Excel sayfas&#305;nda "Alt+F11" yap&#305;nca bulursunuz.

Sonra mod&#252;l nedir, diye sorars&#305;n&#305;z. Siz en iyisi burdan Excel dersanesinde http://www.excel.web.tr/forumdisplay.php?f=60 &#304;sakaraku&#351; ve di&#287;er arkada&#351;lar&#305;n haz&#305;rlad&#305;&#287;&#305; d&#246;k&#252;manlar&#305; okuyun.

Makro nedir, Makro kaydetme, Vba, Mod&#252;l gibi a&#231;&#305;klamalar mevcut.
 
Valuer &#231;ok te&#351;ekk&#252;rler dediklerini bi inceleyeyim... bende bir arkada&#351;&#305;m i&#231;in ara&#351;t&#305;r&#305;yorum konuyu...
 
Allah razı olsun kardeş... tekrar teşekkürler.:opucuk:
 
arkadaşım eline sağlık excell de çok işime yaradı. Ancak bu işlemi word de yapmak mümkünmüdür? mesela banka talimatında rakamla yazdığım tutarın belirttiğim yerde metne çevirmesi mümkün mü?

Teşekkürler...
 
merhabalar.. yenı konu acmak ıstemedım ama kod hata verıyo. ugrastım ama anlayamadım. proforma fatura uzerındekı rakamla yazan ytl yı metne cevıremıyorum. kod bos sayfada calısıyo ama ıstedıgım belgede kullanamadım belge ekte ılgınıze sımdıden tesekkurler..
 
Geri
Üst