Funktion spellnumber (numberRange als Strecke)
Wenn numberRange = "" dann
spellnumber = ""
Sonst
spellnumber = Currency2Words (numberRange, „lbs“, „Pennys“)
Beenden wenn
Funktion beenden
Funktion Currency2Words (ByVal MyNumber, wahlweise freigestellte strUnits, wahlweise freigestelltes strFrac)
Schwacher Temp
Schwache Maßeinheiten
Schwaches Frac
Schwaches DecimalPlace
Zählimpuls verdunkeln
Wenn IsMissing (strUnits) dann strUnits = „Dollar“
Wenn IsMissing (strFrac) dann strFrac = „Cents“
ReDim Platz (9) als Schnur
Setzen (2) = „tausend“
Setzen (3) = „Million“
Setzen (4) = „Milliarde“
Setzen (5) = „Trillion“
MyNumber = Ordnung (str (MyNumber))
DecimalPlace = InStr (MyNumber, „.")
Wenn DecimalPlace > 0 dann
Temp = verließ (mittler (MyNumber, DecimalPlace + 1) u. „00“, 2)
Frac = ConvertTens (Temp)
MyNumber = Ordnung (link (MyNumber, DecimalPlace - 1))
Beenden wenn
Zählimpuls = 1
Tun, während MyNumber <> ""
Temp = ConvertHundreds (recht (MyNumber, 3))
Wenn Temp <> "" dann Maßeinheiten = Temp u. Platz (Zählimpuls) u. Maßeinheiten
Wenn Len (MyNumber) > 3 dann
MyNumber = verlassen (MyNumber, Len (MyNumber) - 3)
Sonst
MyNumber = ""
Beenden wenn
Zählimpuls = Zählimpuls + 1
Schleife
Maßeinheiten = Ordnung (Maßeinheiten) u. „„
Fall-Ordnung (Maßeinheiten) vorwählen
"" Umkleiden
Maßeinheiten = "" '„nicht“ u. strUnits
Fall „einer“
Maßeinheiten = „eine“ u. verließen (strUnits, Len (strUnits) - 1)
Fall sonst
Maßeinheiten = Maßeinheiten u. strUnits
Ende auserwählt
Fall-Ordnung (Frac) vorwählen
"" Umkleiden
Frac = "" '„und nicht“ u. strFrac
Fall „einer“
Wenn Maßeinheiten = "" dann
Frac = Frac u. „„u. strFrac
Sonst
Frac = „und eins“ u. verließen (strFrac, Len (strFrac) - 1)
Beenden wenn
Sonst umkleiden
Wenn Maßeinheiten = "" dann
Frac = Frac u. „„u. strFrac
Sonst
Frac = „und“ u. Frac u. „„u. strFrac
Beenden wenn
Auserwähltes beenden
Wenn Maßeinheiten = "" dann
Currency2Words = Frac
Sonst
Currency2Words = Maßeinheiten u. Frac
Beenden wenn
Currency2Words = ersetzen (Ordnung (Currency2Words), „ „,“ ")
Enden-Funktion
Private Funktion ConvertHundreds (ByVal MyNumber)
Schwaches Resultat als Schnur
Wenn Val (MyNumber) = 0 dann Funktion herausnehmen
MyNumber = recht („000“ u. MyNumber, 3)
'Hunderte
Wenn Sie verlassen werden (MyNumber, 1) <> „0“ dann
Resultat = ConvertDigit (gelassen (MyNumber, 1)) u. „hundert“
Beenden wenn
'10
Wenn mittler (MyNumber, 2, 1) <> „0“ dann
Resultat = Resultat u. ConvertTens (mittler (MyNumber, 2))
Sonst
Resultat = Resultat u. ConvertDigit (mittler (MyNumber, 3))
Beenden wenn
ConvertHundreds = Ordnung (Resultat)
Enden-Funktion
Private Funktion ConvertTens (ByVal MyTens)
Schwaches Resultat als Schnur
'Ist Wert zwischen 10 und 19?
Wenn Val ((MyTens, 1)) = 1 dann gelassen
Fall Val (MyTens) vorwählen
Rechtssache 10: Resultat = „10“
Rechtssache 11: Resultat = „elf“
Rechtssache 12: Resultat = „zwölf“
Rechtssache 13: Resultat = „dreizehn“
Rechtssache 14: Resultat = „vierzehn“
Rechtssache 15: Resultat = „fünfzehn“
Rechtssache 16: Resultat = „sechzehn“
Rechtssache 17: Resultat = „siebzehn“
Rechtssache 18: Resultat = „achtzehn“
Rechtssache 19: Resultat = „neunzehn“
Fall sonst
Ende auserwählt
Sonst
'. andernfalls ist es zwischen 20 und 99.
Fall Val vorwählen (verließ (MyTens, 1))
Rechtssache 2: Resultat = „Zwanzig“
Rechtssache 3: Resultat = „dreißig“
Rechtssache 4: Resultat = „vierzig“
Rechtssache 5: Resultat = „fünfzig“
Rechtssache 6: Resultat = „sechzig“
Rechtssache 7: Resultat = „siebzig“
Rechtssache 8: Resultat = „achtzig“
Rechtssache 9: Resultat = „neunzig“
Fall sonst
Ende auserwählt
'Bekehrter eine setzen Stelle.
Resultat = Resultat u. ConvertDigit (recht (MyTens, 1))
Beenden wenn
ConvertTens = Resultat
Enden-Funktion
Private Funktion ConvertDigit (ByVal MyDigit)
Fall Val (MyDigit) vorwählen
Rechtssache 1: ConvertDigit = „eins“
Rechtssache 2: ConvertDigit = „zwei“
Rechtssache 3: ConvertDigit = „drei“
Rechtssache 4: ConvertDigit = „vier“
Rechtssache 5: ConvertDigit = „fünf“
Rechtssache 6: ConvertDigit = „sechs“
Rechtssache 7: ConvertDigit = „sieben“
Rechtssache 8: ConvertDigit = „acht“
Rechtssache 9: ConvertDigit = „neun“
Fall sonst: ConvertDigit = ""
Ende auserwählt
Enden-Funktion
|