+90 (212) 659 25 70 •
Mikro Bayi

Excel'de sayıyı yazıya çevirme



Excel Sayıyı Yazıya çevirme-Mikro-Simge BilgisayarExcel kullananlar bilirler, sayılar, formüller derken bir de bakmışsınız düz metinleri bile artık excelde yazıyorsunuz. Aşağıdaki makroyu kullanarak bir hücredeki sayıyı metne çevirebilirsiniz.
Yapmanız gerekenler;

Microsoft Excel’i açın, Araçlar>Makro>Visual Basic Düzenleyicisi (Kısayol: Alt+F11)Insert>Module tıklayın. Açılan boş sayfaya aşağıdaki kodu yapıştırın. Kaydedip Excel’e geri dönün.Deneme için A1 hücresine bir sayı yazın B1 hücresine geçip şu formülü yazın =yaz(A1) Yazdığınız rakamlar metne dönüşecektir. Burada kullanacağımız işlem terimi =yaz(hücre_adı) olacaktır.

 

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

Function yaz$(sayi)

b$(0) = ""
b$(1) = "bir"
b$(2) = "iki"
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




Eklenme Tarihi : 15.03.2009   Okunma Sayısı : 45039
Anahtar Kelimeler : Excel, Sayı, Yazı, ÇevirmeÖnceki Sayfa   Yazdır   Facebook'ta Paylaş