DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Excel sayfasında iken Alt+F11 tuşları ile İnsert/Module ile aşağıdaki kod kopyalanıp yapıştırılır
Function ParaCevir(Para, Optional PBirim = "Lira", Optional KBirim = "Kuruş")
Dim ParaStr As String
Dim Lira As String, Kurus As String
If Not IsNumeric(Para) Then
ParaCevir = "GİRİLEN DEĞER SAYI DEĞİL!"
Exit Function
End If
ParaStr = Format(Abs(Para), "0.00")
Lira = Left(ParaStr, Len(ParaStr) - 3)
Kurus = Right(ParaStr, 2)
ParaCevir = IIf(Para < 0, "Eksi ", "") & Cevir(Lira) & " " & PBirim & " " & _
IIf(Val(Kurus) <> 0, Cevir(Kurus) & " " & KBirim & " ", "")
End Function
Private Function Cevir(SayiStr As String) As String
Dim Rakam(15)
Dim c(3), Sonuc, e
Birler = Array("", "bir", "iki", "üç", "dört", "beş", "altı", "yedi", "sekiz", "dokuz")
Onlar = Array("", "on", "yirmi", "otuz", "kırk", "elli", "altmış", "yetmiş", "seksen", "doksan")
Binler = Array("trilyon", "milyar", "milyon", "bin", "")
SayiStr = String(15 - Len(SayiStr), "0") + SayiStr
For i = 1 To 15
Rakam(i) = Val(Mid$(SayiStr, i, 1))
Next i
Sonuc = ""
For i = 0 To 4
c(1) = Rakam(i * 3 + 1)
c(2) = Rakam(i * 3 + 2)
c(3) = Rakam(i * 3 + 3)
If c(1) = 0 Then
e = ""
ElseIf c(1) = 1 Then
e = "yüz"
Else
e = Birler(c(1)) + "yüz"
End If
e = e + Onlar(c(2)) + Birler(c(3))
If e <> "" Then e = e + Binler(i)
If (i = 3) And (e = "birbin") Then e = "bin"
Sonuc = Sonuc + e
Next i
If Sonuc = "" Then Sonuc = "Sıfır"
Cevir = UCase(Mid(Sonuc, 1, 1)) + Mid(Sonuc, 2, Len(Sonuc) - 1)
End Function
Excel sayfasında Paraçevir işlevinin ekleneceği hücreye;
=ParaCevir(Hücre Adresi) yazılarak, çalıştırılır.
123546.05 | Yüzyirmiüçbinbeşyüzkırkaltı Lira Beş Kuruş |
123546.05 | Yüz yirmi üç bin beş yüz kırk altı Lira Beş Kuruş |
TDK ya göre parayı yazı olarak ifade ettiğimzide arada boşluk olmaz bitişik yazılır. (Sonradan değiştirilme ve oynama olmasın diye)Sayın Hocam bir sorum olacak. Bu fonksiyonlarda yazıların arasında boşluk olmuyor. Bu Muhasebe kuralı mı yoksa fonksiyon yazarken önemsenmeyen bir durum mu?
Yani sayıları yazıya dökerken:
Hangisi Muhasebe olarak doğru yazım
123546.05
Yüzyirmiüçbinbeşyüzkırkaltı Lira Beş Kuruş
123546.05
Yüz yirmi üç bin beş yüz kırk altı Lira Beş Kuruş