• Üyelik paylaşımı yasaktır! Hesabınızı başkalarına vermeyin! Hesap paylaşımları yasaklama ile sonuçlanacaktır.

Sayıları yazıya çevirme

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

ByClxon

Süper Üye
Katılım
7 Ocak 2016
Mesajlar
955
Beğeni Puanı
4
Yaş
22
[font='Titillium Web', sans-serif]Function NToT(Value)
Dim N(100)
Dim T(5)

N(0) = "sıfır"
N(1) = "bir"
N(2) = "iki"
N(3) = "üç"
N(4) = "dört"
N(5) = "beş"
N(6) = "altı"
N(7) = "yedi"
N(8) = "sekiz"
N(9) = "dokuz"
N(10) = "On"
N(20) = "yirmi"
N(30) = "otuz"
N(40) = "kırk"
N(50) = "elli"
N(60) = "altmış"
N(70) = "yetmiş"
N(80) = "seksen"
N(90) = "doksan"

T(0) = ""
T(1) = "bin"
T(2) = "milyon"
T(3) = "milyar"
T(4) = "trilyon"
T(5) = "kattrilyon"

ThreeIn = Int(Len(Value) / 3)
ThreeOut = Len(Value) - ThreeIn * 3
ThreeOuttedText = Mid(Value, ThreeOut + 1)
ThreeInText = Left(Value, ThreeOut)

Dim Threes()
ReDim Threes(ThreeIn)

SelectCaseLen(ThreeInText)
Case 1
LeftText = N(ThreeInText)
Case 2
IfMid(ThreeInText, 2, 1) <> "0"Then
LeftText = N(Left(ThreeInText, 1) & "0") & N(Right(ThreeInText, 1))
Else
LeftText = N(ThreeInText)
EndIf
EndSelect

If ThreeIn <> 0 Then
Dim SplittedNumber()
ReDim SplittedNumber(ThreeIn - 1)

For i = 0 ToUBound(SplittedNumber)
SplittedNumber(i) = Mid(ThreeOuttedText, (i * 3) + 1, 3)
Next

For i = UBound(SplittedNumber) To 0 Step -1
IfMid(SplittedNumber(i), 1, 1) <> "0"Then
IfMid(SplittedNumber(i), 1, 1) <> "1"Then
A = N(Mid(SplittedNumber(i), 1, 1)) & "yüz"
Else
A = "yüz"
EndIf
Else
A = ""
EndIf
IfMid(SplittedNumber(i), 2, 1) <> "0"Then
B = N(Mid(SplittedNumber(i), 2, 1) & 0)
Else
B = ""
EndIf
IfMid(SplittedNumber(i), 3, 1) <> "0"Then
C = N(Mid(SplittedNumber(i), 3, 1))
Else
C = ""
EndIf

Threes(UBound(SplittedNumber) - i) = A & B & C
Next

For i = IIf((ThreeOut = 0), UBound(Threes) - 1, UBound(Threes)) To 0 Step -1
ThreeText = ThreeText & Threes(i) & T(i) & " "
Next
EndIf

LastText = LeftText & ThreeText
LastText = Replace(LastText, "birbin""bin")
LastText = Replace(LastText, " bin""")
LastText = Replace(LastText, " milyon""")
LastText = Replace(LastText, " milyar""")
LastText = Replace(LastText, " trilyon""")
LastText = Replace(LastText, " kattrilyon""")
NToT = LastText
EndFunction[/FONT]
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...


Üst Alt