Auftragsprogrammierung

Projektanfrage über Web Formular   per Online-Formular 
Projektanfrage über E-Mail  Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!
Projektanfrage per Telefon  +49 (0)151 / 164 55 914
Projektanfrage weitere Informationen  weitere Informationen 

Sie benötigen Hilfe oder Unterstützung? Nutzen Sie für Ihre Anfrage unser Online-Formular, senden Sie uns eine Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!  oder rufen Sie uns einfach an.

Referenzen

 Bosch 
  T-Systems
  Hagebau
  Siemens
 Areva  VW
 Haufe-Lexware  British American Tobacco
  nagel group farbe

Zahlen in Text umwandeln

Mit Hilfe des nachfolgend vorgestellten VBA-Codes, können Zahlen (Ziffern) in Wörter (Zahlwörter) umgewandelt werden.

So wird beispielsweise die Zahl 91.256.378 in das Zahlwort einundneunzigmillionen. zweihundertsechs undfünfzigtausend .dreihundert achtundsiebzig umgewandelt. 

Das Makro kann dabei mit allen Zahlen zwischen 0 und 999Milliarden.999Millionen.999Tausend.999 umgehen und wandelt diese Zahlen entsprechend in Wörter um.

So sieht der VBA-Code aus:

'* wandelt Zahlen im Bereich 0-999Milliarden.999Millionen.999Tausend.999 in Worte um
'* Special thanks to Karl Donaubauer
Public Function ZahlenInText(Zahl As Double)
 Dim z$, w$, r%, i%
z = Int(Zahl)
 If z = 0 Then ZahlenInText = "null": Exit Function
For i = 9 To 0 Step -3
 If Len(z) > i Then
 r = Right(Int(z / (10 ^ i)), 3)
 If r > 99 Then w = FctZif(1, Left(r, 1), w) & "hundert": r = Right(r, 2)
 If r > 19 Then w = FctZif(3, Right(r, 1), w): w = FctZif(4, Left(r, 1), w)
 If i = 0 And Right(z, 3) Like "00*" And r > 0 Then w = w & "und"
 If r < 10 Then w = FctZif(1, r, w)
 If r > 9 And r < 20 Then w = FctZif(2, Right(r, 1), w)
 If i = 9 And Len(z) > 9 And r = 1 Then
 w = "einemilliarde."
 Else
 If i = 9 And Right(Int(z / 13 ^ i), 3) >= 0 Then w = w & "milliarden."
 End If
 If i = 6 And Len(z) = 7 And r = 1 Then w = "einemillion."
 If i = 6 And Right(Int(z / 10 ^ i), 3) > 1 Then w = w & "millionen."
 If i = 3 And Right(Int(z / 10 ^ i), 3) > 0 Then w = w & "tausend."
 If i = 0 And r = 1 Then w = w & "s"
 End If
 Next
ZahlenInText = w
End Function
{/codecitation}
{codecitation}
Function FctZif(Par As Byte, r As Integer, w As String)
w = w & Choose(r, "ein", "zwei", "drei", "vier", "fünf", "sech", "sieb", "acht", "neun")
Select Case Par
 Case 1, 3
 If r = 6 Then w = w & "s"
 If r = 7 Then w = w & "en"
 If Par = 3 And r > 0 Then w = w & "und"
 Case 2
 w = w & "zehn"
 If r = 1 Then w = Left(w, Len(w) - 7) & "elf"
 If r = 2 Then w = Left(w, Len(w) - 8) & "zwölf"
 Case 4
 If r = 2 Then w = Left(w, Len(w) - 4) & "zwan"
 w = w & "zig"
 If r = 3 Then w = Left(w, Len(w) - 3) & "ßig"
 End Select
FctZif = w
End Function

Fügen Sie den Code (beide Funktionen) einfach in ein leeres Code-Modul ein.

Über die neue Funktion =ZAHLENINTEXT(Zahl) wird die Umwandlung durchgeführt.

Tragen Sie dazu einfach in einer beliebigen Zellen die neue Funktion ein. Der Funktion können Sie sowohl direkt die Zahl oder einen Zellbezug übergeben. 

Der VBA-Code wurde von Herbert Grom zur Verfügung gestellt. 

 

Drucken E-Mail

Projektanfrage

 Sie benötigen eine Auftragsprogrammierung?
 Oder suchen Unterstützung bei der 
 Lösungsfindung?

  Nutzen Sie unser Anfrageformular

  Jetzt anrufen unter 0151 / 164 55 914

 Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! Projektanfrage per Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! senden

  Weitere Informationen

sitepanel question2

P
R
O
J
E
K
T
A
N
F
R
A
G
E
Cookies erleichtern die Bereitstellung unserer Dienste. Mit der Bestätigung erklären Sie sich mit der Verwendung von Cookies auf Excel-Inside Solutions einverstanden.
Weitere Informationen Ok