Çözüldü Rakamı yazıya çevirme

yuzun23

Altın Üye
Katılım
11 Mayıs 2006
Mesajlar
656
Excel Vers. ve Dili
Ofis 2016 64 Bit Türkçe
Altın Üyelik Bitiş Tarihi
17-01-2026
ekteki tabloda yazılan rakamları yazıya çevirme (fonksiyonlu) şimdiden ellerinize ve emeklerinize sağlık
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Forumumuzda bu talebinizle ilgili ayrı bir bölüm var. İncelemenizde fayda var..

 

yuzun23

Altın Üye
Katılım
11 Mayıs 2006
Mesajlar
656
Excel Vers. ve Dili
Ofis 2016 64 Bit Türkçe
Altın Üyelik Bitiş Tarihi
17-01-2026
ÜSTADIM VALLA BECEREMEDİM
 

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
471
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
Korhan Hocamız yol göstermiş olup uygulamaya dökememişsiniz. Hocamızın hoşgörüsüne sığınarak buyrun ;
 

Ekli dosyalar

muhasebeciyiz

Altın Üye
Katılım
10 Şubat 2006
Mesajlar
471
Excel Vers. ve Dili
Office 2016
64 Bit
Altın Üyelik Bitiş Tarihi
21-12-2027
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.
 

yuzun23

Altın Üye
Katılım
11 Mayıs 2006
Mesajlar
656
Excel Vers. ve Dili
Ofis 2016 64 Bit Türkçe
Altın Üyelik Bitiş Tarihi
17-01-2026
HAKKINIZI HELAL EDİNİZ
 
Üst