'Aşağıdaki kodu kullanabilirsiniz: Function SayiYaziya(Sayi As Currency) As String Dim Birler As Variant, Onlar As Variant Dim SayiStr As String, Lira As Long, Kurus As Long Dim LiraStr As String, KurusStr As String Birler = Array("", "Bir", "İki", "Üç", "Dört", "Beş", "Altı", "Yedi", "Sekiz", "Dokuz") Onlar = Array("", "On", "Yirmi", "Otuz", "Kırk", "Elli", "Altmış", "Yetmiş", "Seksen", "Doksan") ' Sayıyı formatla ve Lira ile Kurus kısımlarını ayır SayiStr = Format(Sayi, "0.00") Lira = CLng(Fix(Sayi)) Kurus = (Sayi - Lira) * 100 ' Lira kısmını yazıya çevir If Lira = 0 Then LiraStr = "Sıfırlira" Else LiraStr = "" Dim Basamak As Integer Dim Grup As Integer, Bolum As Long, Modulus As Long Dim Parca As String For Grup = 0 To 3 Bolum = (Lira \ 10 ^ (Grup * 3)) Mod 1000 If Bolum > 0 Then Parca = "" If Bolum >= 100 Then Parca = Birler(Bolum \ 100) & "Yüz" Bolum = Bolum Mod 100 End If If Bolum >= 10 Then Parca = Parca & Onlar(Bolum \ 10) Bolum = Bolum Mod 10 End If If Bolum > 0 Then Parca = Parca & Birler(Bolum) End If Select Case Grup Case 1 Parca = Parca & "Bin" Case 2 Parca = Parca & "Milyon" Case 3 Parca = Parca & "Milyar" End Select LiraStr = Parca & LiraStr End If Next Grup LiraStr = LiraStr & "lira" End If ' Kurus kısmını yazıya çevir If Kurus = 0 Then KurusStr = "" Else KurusStr = " " & Onlar(Kurus \ 10) & Birler(Kurus Mod 10) & "kuruş" End If SayiYaziya = LiraStr & KurusStr End Function
Nihayet adam gibi konu anlatan bir kardeşimiz çıktı. Teşekkür ediyorum.
hocam iyi güzelde "1000 =bin sıfır 10000 onbin sıfır" olarak çeviriyor. birde rakamı yukarı yuvarlıyor. kuruşlarıda yazdırmak istiyorum. ama malesef olmuyor.
Merhabalar çok faydalı oldu tşk ederim.fakat bir sorum olacaktı örneğin 1000 çevirmede sıkıntı oluyor bin sıfır şeklinde yazıyor
Sonu sıfır ile bitenleri yapamıyor. 375.000 i üç yüz yetmiş beş bin sıfır olarak çeviriyor
merhaba bilgi icin teşekkürler sizden ricam excelde fatura rakamsal tutarını metne çevirmek istiyorum ama küsüratlari vermiyor
MRB. MESELA 500231 tutarının sonu TL ve KR olarak nasıl yazabilirim. hangi makro buna uygundur? yardımlarınız için şimdiden teşekkürler
excel size yeter : hazır makrolar da rakamı yazıya çevirme makrosu var, tl ve krş veriyor
Merhaba, makro google sheets de çalışmadı.
virgülden sonra sıfır olunca hatalı oluyor
Videoda görülen diğer makroları kullanmanız gerekiyor.
KURUŞLARI ÇEVİRMİYOR ! 64,90 tutarı var altmış beş olarak alıyor yazıyı
Hastanede düzenlenen mifin tutarini aşağı tarafa yazı ile yazmasını istiyorum ama yapamadım.
ÇOK FAYDALI OLDU. TEŞEKKÜR EDRİM.
çok faydalı oldu gerçekten çok teşekkür ediyorum
emeğinize sağlık sayıyı eur yazıya çevirdim başka yerdende makro alarak
Çok teşekkürler.
Allah razı olsun
Teşekkür ederim
Program Rakamları yuvarlıyor, Virgülden sonrası yok, Ayrıca yeni bir Excel sayfası açtığınızda formül işlemiyor.
Çok Teşekkürler
ben yazıyı sayıya çevirmek istiyorum; örneğin ilkokul için 1; ortaokul için 2 ; lise için 3 ; üniversite için 4; yükseklisans için 5 gibi ,
ama bir sıkıntı oldu
türkçe karekterleri çıkmıyor ş ,,,,
eyvallah hocam
teşekkürler çok faydalı
çok teşekkürler süperdi
Ben yapamadim
Bir tane adam akıllı çeviri ulaşamadım hepsi kuruşları çeviremiyor bir işe yaramaz çöpppp
'Aşağıdaki kodu kullanabilirsiniz:
Function SayiYaziya(Sayi As Currency) As String
Dim Birler As Variant, Onlar As Variant
Dim SayiStr As String, Lira As Long, Kurus As Long
Dim LiraStr As String, KurusStr As String
Birler = Array("", "Bir", "İki", "Üç", "Dört", "Beş", "Altı", "Yedi", "Sekiz", "Dokuz")
Onlar = Array("", "On", "Yirmi", "Otuz", "Kırk", "Elli", "Altmış", "Yetmiş", "Seksen", "Doksan")
' Sayıyı formatla ve Lira ile Kurus kısımlarını ayır
SayiStr = Format(Sayi, "0.00")
Lira = CLng(Fix(Sayi))
Kurus = (Sayi - Lira) * 100
' Lira kısmını yazıya çevir
If Lira = 0 Then
LiraStr = "Sıfırlira"
Else
LiraStr = ""
Dim Basamak As Integer
Dim Grup As Integer, Bolum As Long, Modulus As Long
Dim Parca As String
For Grup = 0 To 3
Bolum = (Lira \ 10 ^ (Grup * 3)) Mod 1000
If Bolum > 0 Then
Parca = ""
If Bolum >= 100 Then
Parca = Birler(Bolum \ 100) & "Yüz"
Bolum = Bolum Mod 100
End If
If Bolum >= 10 Then
Parca = Parca & Onlar(Bolum \ 10)
Bolum = Bolum Mod 10
End If
If Bolum > 0 Then
Parca = Parca & Birler(Bolum)
End If
Select Case Grup
Case 1
Parca = Parca & "Bin"
Case 2
Parca = Parca & "Milyon"
Case 3
Parca = Parca & "Milyar"
End Select
LiraStr = Parca & LiraStr
End If
Next Grup
LiraStr = LiraStr & "lira"
End If
' Kurus kısmını yazıya çevir
If Kurus = 0 Then
KurusStr = ""
Else
KurusStr = " " & Onlar(Kurus \ 10) & Birler(Kurus Mod 10) & "kuruş"
End If
SayiYaziya = LiraStr & KurusStr
End Function