• DİKKAT

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

TL Yazma

  • Konbuyu başlatan Konbuyu başlatan 1omer1
  • Başlangıç tarihi Başlangıç tarihi
Katılım
15 Kasım 2016
Mesajlar
59
Excel Vers. ve Dili
Excel 2016
Merhaba Arkadaşlar Sizlere Basit Bir Sorum Olacak

Kod:
Function yaziyla(sayi)
On Error Resume Next
Dim deg(3), s(3), deger(2)
a = Array("", "Bir", "İki", "Üç", "Dört", "Beş", "Altı", "Yedi", "Sekiz", "Dokuz")
b = Array("", "On", "Yirmi", "Otuz", "Kırk", "Elli", "Altmış", "Yetmiş", "Seksen", "Doksan")
c = Array("", "", "bin", "milyon", "milyar", "trilyon")
deger(1) = Int(sayi)
deger(2) = Round(sayi - deger(1), 2) * 100
If sayi = 0 Then son = "sıfır"
For g = 1 To 2
yazi = deger(g)
For d = 1 To Len(yazi) Step 3
e = e + 1
deg(1) = Mid(yazi, Len(yazi) - d - 1, 1)
deg(2) = Mid(yazi, Len(yazi) - d, 1)
deg(3) = Mid(yazi, Len(yazi) - d + 1, 1)
If deg(1) <> 0 Then s(1) = Replace(a(deg(1)) & "yüz", "biryüz", "yüz")
s(2) = b(deg(2))
s(3) = a(deg(3)) & c(e)
If deg(1) + deg(2) + deg(3) = 0 Then s(3) = ""
son = s(1) & s(2) & s(3) & son
If Left(son, 6) = "birbin" Then son = Replace(son, "birbin", "bin")
For f = 1 To 3
deg(f) = ""
s(f) = ""
Next: Next
If g = 1 And deger(1) <> 0 Then ytl = son & " TL"
If g = 2 And deger(2) <> 0 Then ykr = " " & son & " KR #"
son = ""
e = 0
Next
yaziyla = ytl & ykr
End Function

Bu Makroyu Kullandığımda TLyi Yazı Olarak Yazdırdığımda Örneğin 1530 TL Yazdırmak İstediğimde BirBİnBeşyüzotuzTL Yazıyor Yani Bastaki Birbin Yerine Sadece Bin Yazmasını İstiyorum Nasıl Yapabilirim
 
Merhaba Arkadaşlar Sizlere Basit Bir Sorum Olacak

Kod:
Function yaziyla(sayi)
On Error Resume Next
Dim deg(3), s(3), deger(2)
a = Array("", "Bir", "İki", "Üç", "Dört", "Beş", "Altı", "Yedi", "Sekiz", "Dokuz")
b = Array("", "On", "Yirmi", "Otuz", "Kırk", "Elli", "Altmış", "Yetmiş", "Seksen", "Doksan")
c = Array("", "", "bin", "milyon", "milyar", "trilyon")
deger(1) = Int(sayi)
deger(2) = Round(sayi - deger(1), 2) * 100
If sayi = 0 Then son = "sıfır"
For g = 1 To 2
yazi = deger(g)
For d = 1 To Len(yazi) Step 3
e = e + 1
deg(1) = Mid(yazi, Len(yazi) - d - 1, 1)
deg(2) = Mid(yazi, Len(yazi) - d, 1)
deg(3) = Mid(yazi, Len(yazi) - d + 1, 1)
If deg(1) <> 0 Then s(1) = Replace(a(deg(1)) & "yüz", "biryüz", "yüz")
s(2) = b(deg(2))
s(3) = a(deg(3)) & c(e)
If deg(1) + deg(2) + deg(3) = 0 Then s(3) = ""
son = s(1) & s(2) & s(3) & son
[color=red][B]If Left(son, 6) = "birbin" Then son = Replace(son, "birbin", "bin")[/B][/color]
For f = 1 To 3
deg(f) = ""
s(f) = ""
Next: Next
If g = 1 And deger(1) <> 0 Then ytl = son & " TL"
If g = 2 And deger(2) <> 0 Then ykr = " " & son & " KR #"
son = ""
e = 0
Next
yaziyla = ytl & ykr
End Function

Bu Makroyu Kullandığımda TLyi Yazı Olarak Yazdırdığımda Örneğin 1530 TL Yazdırmak İstediğimde BirBİnBeşyüzotuzTL Yazıyor Yani Bastaki Birbin Yerine Sadece Bin Yazmasını İstiyorum Nasıl Yapabilirim




Kod:
If Left(son, 6) = "[B]Birbin[/B]" Then son = Replace(son, "[B]Birbin[/B]", "Bin")

satırını bu şekilde düzeltirseniz.

Kolay gelsin.
 
Kod:
If Left(son, 6) = "[B]Birbin[/B]" Then son = Replace(son, "[B]Birbin[/B]", "Bin")

satırını bu şekilde düzeltirseniz.

Kolay gelsin.

Çok Teşekkür Ederim Tamer Bey Düzeldi İyi Çalışmalar.
 
Geri
Üst