Zahlen zu Text, nehmen Sie drei (über eine Million) (Microsoft Word)
In früheren Ausgaben von WordTips haben Sie gelernt, wie Sie mit einem Makro Zahlen in Wörter konvertieren. Zum Beispiel können Sie 123 in einhundertdreiundzwanzig konvertieren. Die vorherigen Inkarnationen dieses Makros waren auf Zahlen unter einer Million beschränkt. In dieser Version wurde der Ante tausendmal erhöht – diese Version des VBA-Makros konvertiert erfolgreich Zahlen bis zu 999.999.999.
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
Sie sollten verstehen, dass Sie zur Verwendung des Makros lediglich die Einfügemarke an einer beliebigen Stelle innerhalb der zu konvertierenden Zahl platzieren müssen. Sie müssen jedoch sicherstellen, dass die Nummer 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 beliebteste Textverarbeitungssoftware der Welt.) Dieser Tipp (1442) gilt für Microsoft Word 97, 2000, 2002 und 2003.