Jeg fandt noget på en tysk internet-side (
http://www.herber.de/forum/archiv/200to204/202748_Zahlen_als_Text_ausgeben.html#202748), som var forholdsvist let at rette til, så det giver danske tal. Det blev til følgende funktion, som skal sættes ind i et modul. Og derefter skal du blot skrive =ZIT(A1), hvis tallet står A1. Funktionen virker op til 9999.
Function ZIT(Zahl)
Dim Tausender As Single
Dim Hunderter As Single
Dim Zehner As Single
Dim Einstellig As Variant
Dim Zweistellig As Variant
Dim zVar As Single
Einstellig = Array("", "Et ", "to ", "tre ", "fire ", "fem ", _
"seks ", "syv ", "otte ", "ni ", "ti ", "elleve ", _
"tolv ", "tretten ", "fjorten ", "femten ", "seksten ", _
"sytten ", "atten ", "nitten ")
Zweistellig = Array("", "ti ", "tyve ", "tredive ", "fyrre ", _
"halvtreds ", "tres ", "halvfjerds ", "firs ", "halfems ")
ZIT = ""
If Zahl = 0 Then
ZahlInText = "Nul"
End If
Tausender = Zahl \ 1000
If Tausender > 0 Then
ZIT = Einstellig(Tausender) & "tusind " '& ("e") * (Tausender = 1)
End If
Zahl = Zahl - Tausender * 1000
Hunderter = Zahl \ 100
If Hunderter > 0 Then
ZIT = ZIT & Einstellig(Hunderter) & "hundrede "
End If
If Right(Zahl, 2) Then
ZIT = ZIT & "og "
End If
Zahl = Zahl - Hunderter * 100
If Zahl < 20 Then
Zehner = Zahl
ZIT = ZIT & Einstellig(Zehner) & " "
Else
Zehner = Zahl \ 10
zVar = Zahl - Zehner * 10
ZIT = ZIT & Einstellig(zVar) & "og "
ZIT = ZIT & Zweistellig(Zehner) & " "
End If
End Function