Es gibt Zeiten, in denen Sie Zahlen buchstabieren müssen. Zum Beispiel möchten Sie vielleicht „1234“ als „eintausendzweihundertvierunddreißig“ buchstabieren.

In Word ist keine Funktion integriert, mit der die Konvertierung für Sie durchgeführt wird. Sie müssen also ein Makro erstellen, das die Konvertierung übernimmt.

Das folgende Makro, BigCardText, konvertiert eine beliebige Zahl zwischen 0 und 999.999.999. Um es zu verwenden, platzieren Sie einfach die Einfügemarke entweder innerhalb der Zahl, die Sie konvertieren möchten, oder rechts von der Zahl (wenn es sich um eine einzelne Ziffer handelt).

Sub BigCardText()

Dim sDigits As String     Dim sBigStuff As String

sBigStuff = ""



' Select the full number in which the insertion point is located     Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdMove     Selection.MoveRight Unit:=wdWord, Count:=1, Extend:=wdExtend

' Store the digits in a variable     sDigits = Trim(Selection.Text)



If Val(sDigits) > 999999 Then         If Val(sDigits) <= 999999999 Then             sBigStuff = Trim(Int(Str(Val(sDigits) / 1000000)))

' Create a field containing the big digits and             ' the cardtext format flag             Selection.Fields.Add Range:=Selection.Range, _               Type:=wdFieldEmpty, Text:="= " + sBigStuff + " \* CardText", _               PreserveFormatting:=True

' Select the field and copy it             Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdExtend             sBigStuff = Selection.Text & " million "

sDigits = Right(sDigits, 6)

End If     End If     If Val(sDigits) <= 999999 Then         ' Create a field containing the digits and the cardtext format flag         Selection.Fields.Add Range:=Selection.Range, _           Type:=wdFieldEmpty, Text:="= " + sDigits + " \* CardText", _           PreserveFormatting:=True

' Select the field and copy it         Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdExtend         sDigits = sBigStuff & Selection.Text

' Now put the words in the document         Selection.TypeText Text:=sDigits         Selection.TypeText Text:=" "

Else         MsgBox "Number too large", vbOKOnly     End If End Sub

Stellen Sie bei Verwendung des Makros sicher, dass die Zahl, die Sie konvertieren, keine irrelevanten Informationen wie Dollarzeichen oder Kommas enthält. Wenn Sie BigCardText ausführen, prüft das Makro, ob die ausgewählte Anzahl über einer Million liegt. Wenn dies der Fall ist, wird zuerst der Teil über einer Million bearbeitet und in Wörter umgewandelt. Dann wird der Wert unter einer Million umgerechnet. Der endgültige, vollständige Wortlaut wird zusammengestellt und gebrauchsfertig in das Dokument eingefügt.

_Hinweis: _

Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der WordTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.

WordTips ist Ihre Quelle für kostengünstige Microsoft Word-Schulungen.

(Microsoft Word ist die weltweit beliebteste Textverarbeitungssoftware.) Dieser Tipp (203) gilt für Microsoft Word 97, 2000, 2002 und 2003. Sie finden eine Version dieses Tipps für die Multifunktionsleistenschnittstelle von Word (Word 2007) und später) hier: