Konvertieren von Zahlen in Wörter

Hinweis: Wir möchten Ihnen die aktuellsten Hilfeinhalte so schnell wie möglich in Ihrer eigenen Sprache bereitstellen. Diese Seite wurde automatisiert übersetzt und kann Grammatikfehler oder Ungenauigkeiten enthalten. Unser Ziel ist es, Ihnen hilfreiche Inhalte bereitzustellen. Teilen Sie uns bitte über den Link am unteren Rand dieser Seite mit, ob die Informationen für Sie hilfreich sind. Hier finden Sie den englischen Artikel als Referenz.

Excel verfügt nicht über eine Standardfunktion, die Zahlen als englische Wörter in einem Arbeitsblatt anzeigt, aber Sie können diese Funktion hinzufügen, indem Sie den folgenden SpellNumber-Funktionscode in ein VBA-Modul (Visual Basic für Applikationen) einfügen. Mit dieser Funktion können Sie Dollar-und Cent-Beträge in Wörter mit einer Formel umwandeln, sodass 22,50 als zweiundzwanzig Dollar und 50 Cent gelesen wird. Dies kann sehr hilfreich sein, wenn Sie Excel als Vorlage zum Drucken von Überprüfungen verwenden.

Wenn Sie numerische Werte in das Text Format umwandeln möchten, ohne Sie als Wörter anzuzeigen, verwenden Sie stattdessen die Text-Funktion .

Hinweis: Microsoft stellt Programmierbeispiele nur für Illustrationen bereit, ohne dass die Garantie entweder ausgedrückt oder angedeutet wird. Dies umfasst, aber nicht beschränkt auf die implizierten Garantien der Gebrauchstauglichkeit oder Eignung für einen bestimmten Zweck. In diesem Artikel wird davon ausgegangen, dass Sie mit der VBA-Programmiersprache und den Tools vertraut sind, die zum Erstellen und Debuggen von Prozeduren verwendet werden. Microsoft-Supporttechniker können Ihnen helfen, die Funktionalität einer bestimmten Prozedur zu erläutern. Diese Beispiele werden jedoch nicht geändert, um zusätzliche Funktionen bereitzustellen, oder Sie können Prozeduren erstellen, die ihren spezifischen Anforderungen entsprechen.

Erstellen der SpellNumber-Funktion zum Konvertieren von Zahlen in Wörter

  1. Verwenden Sie die Tastenkombination alt + F11 , um den Visual Basic-Editor (Visual Basic-Editor) zu öffnen.

    Hinweis: Sie können auch auf den Visual Basic-Editor zugreifen, indem Sie im Menüband die Registerkarte "Entwickler" anzeigen.

  2. Klicken Sie auf die Registerkarte Einfügen und dann auf Modul.

    Klicken Sie im Menü "Einfügen" auf "Modul".
  3. Kopieren Sie die folgenden Codezeilen.

    Hinweis: Dieser Code, der als benutzerdefinierte Funktion (UDF)bezeichnet wird, automatisiert die Aufgabe des Konvertierens von Zahlen in Text in einem Arbeitsblatt.

    Option Explicit
    
    'Main Function
    
    Function SpellNumber(ByVal MyNumber)
    
    Dim Dollars, Cents, Temp
    
    Dim DecimalPlace, Count
    
    ReDim Place(9) As String
    
    Place(2) = " Thousand "
    
    Place(3) = " Million "
    
    Place(4) = " Billion "
    
    Place(5) = " Trillion "
    
    ' String representation of amount.
    
    MyNumber = Trim(Str(MyNumber))
    
    ' Position of decimal place 0 if none.
    
    DecimalPlace = InStr(MyNumber, ".")
    
    ' Convert cents and set MyNumber to dollar amount.
    
    If DecimalPlace > 0 Then
    
    Cents = GetTens(Left(Mid(MyNumber, DecimalPlace + 1) & _ "00", 2))
    
    MyNumber = Trim(Left(MyNumber, DecimalPlace - 1))
    
    End If
    
    Count = 1
    
    Do While MyNumber <> ""
    
    Temp = GetHundreds(Right(MyNumber, 3))
    
    If Temp <> "" Then Dollars = Temp & Place(Count) & Dollars
    
    If Len(MyNumber) > 3 Then
    
    MyNumber = Left(MyNumber, Len(MyNumber) - 3)
    
    Else
    
    MyNumber = ""
    
    End If
    
    Count = Count + 1
    
    Loop
    
    Select Case Dollars
    
    Case ""
    
    Dollars = "No Dollars"
    
    Case "One"
    
    Dollars = "One Dollar"
    
    Case Else
    
    Dollars = Dollars & " Dollars"
    
    End Select
    
    Select Case Cents
    
    Case ""
    
    Cents = " and No Cents"
    
    Case "One"
    
    Cents = " and One Cent"
    
    Case Else
    
    Cents = " and " & Cents & " Cents"
    
    End Select
    
    SpellNumber = Dollars & Cents
    
    End Function
    
    
    ' Converts a number from 100-999 into text
    
    Function GetHundreds(ByVal MyNumber)
    
    Dim Result As String
    
    If Val(MyNumber) = 0 Then Exit Function
    
    MyNumber = Right("000" & MyNumber, 3)
    
    ' Convert the hundreds place.
    
    If Mid(MyNumber, 1, 1) <> "0" Then
    
    Result = GetDigit(Mid(MyNumber, 1, 1)) & " Hundred "
    
    End If
    
    ' Convert the tens and ones place.
    
    If Mid(MyNumber, 2, 1) <> "0" Then
    
    Result = Result & GetTens(Mid(MyNumber, 2))
    
    Else
    
    Result = Result & GetDigit(Mid(MyNumber, 3))
    
    End If
    
    GetHundreds = Result
    
    End Function
    
    
    ' Converts a number from 10 to 99 into text.
    
    
    Function GetTens(TensText)
    
    Dim Result As String
    
    Result = "" ' Null out the temporary function value.
    
    If Val(Left(TensText, 1)) = 1 Then ' If value between 10-19...
    
    Select Case Val(TensText)
    
    Case 10: Result = "Ten"
    
    Case 11: Result = "Eleven"
    
    Case 12: Result = "Twelve"
    
    Case 13: Result = "Thirteen"
    
    Case 14: Result = "Fourteen"
    
    Case 15: Result = "Fifteen"
    
    Case 16: Result = "Sixteen"
    
    Case 17: Result = "Seventeen"
    
    Case 18: Result = "Eighteen"
    
    Case 19: Result = "Nineteen"
    
    Case Else
    
    End Select
    
    Else ' If value between 20-99...
    
    Select Case Val(Left(TensText, 1))
    
    Case 2: Result = "Twenty "
    
    Case 3: Result = "Thirty "
    
    Case 4: Result = "Forty "
    
    Case 5: Result = "Fifty "
    
    Case 6: Result = "Sixty "
    
    Case 7: Result = "Seventy "
    
    Case 8: Result = "Eighty "
    
    Case 9: Result = "Ninety "
    
    Case Else
    
    End Select
    
    Result = Result & GetDigit _
    
    (Right(TensText, 1)) ' Retrieve ones place.
    
    End If
    
    GetTens = Result
    
    End Function
    
    
    ' Converts a number from 1 to 9 into text.
    
    Function GetDigit(Digit)
    
    Select Case Val(Digit)
    
    Case 1: GetDigit = "One"
    
    Case 2: GetDigit = "Two"
    
    Case 3: GetDigit = "Three"
    
    Case 4: GetDigit = "Four"
    
    Case 5: GetDigit = "Five"
    
    Case 6: GetDigit = "Six"
    
    Case 7: GetDigit = "Seven"
    
    Case 8: GetDigit = "Eight"
    
    Case 9: GetDigit = "Nine"
    
    Case Else: GetDigit = ""
    
    End Select
    
    End Function
  4. Fügen Sie die Codezeilen in das Feld Modul1 (Code) ein.

    In das Feld "Module1" (Code) eingefügter Code.
  5. Drücken Sie alt + Q , um zu Excel zurückzukehren. Die Funktion SpellNumber ist jetzt einsatzbereit.

    Hinweis: Diese Funktion funktioniert nur für die aktuelle Arbeitsmappe. Wenn Sie diese Funktion in einer anderen Arbeitsmappe verwenden möchten, müssen Sie die Schritte wiederholen, um den Code in dieser Arbeitsmappe zu kopieren und einzufügen.

Seitenanfang

Verwenden der SpellNumber-Funktion in einzelnen Zellen

  1. Geben Sie die Formel = SpellNumber (a1) in die Zelle ein, in der Sie eine schriftliche Zahl anzeigen möchten, wobei a1 die Zelle mit der Zahl ist, die Sie konvertieren möchten. Sie können auch manuell den Wert like = SpellNumber (22,50) eingeben.

  2. Drücken Sie die Eingabe Taste, um die Formel zu bestätigen.

Seitenanfang

Speichern der SpellNumber-Funktion in einer Arbeitsmappe

Excel kann eine Arbeitsmappe nicht mit Makrofunktionen im standardmäßigen Makro freien Arbeitsmappenformat (XLSX) speichern. Wenn Sie auf Datei > Speichern klicken. Ein VB-Projekt Dialogfeld wird geöffnet. Klicken Sie auf Nein.

Klicken Sie im Dialogfeld "VB-Projekt" auf "Nein".

Sie können Ihre Datei als Excel-Arbeitsmappe mit Makros (. xlsm) speichern, um Ihre Datei im aktuellen Format beizubehalten.

  1. Klicken Sie auf Datei > Speichern unter.

  2. Klicken Sie auf das Dropdownmenü Dateityp, und wählen Sie Excel-Arbeitsmappe mit Makros aus.

  3. Klicken Sie auf Speichern.

Seitenanfang

Siehe auch

TEXT

Ihre Office-Fähigkeiten erweitern
Schulung erkunden
Neue Funktionen als Erster erhalten
An Office Insider teilnehmen

War diese Information hilfreich?

Vielen Dank für Ihr Feedback!

Vielen Dank für Ihr Feedback. Es klingt, als ob es hilfreich sein könnte, Sie mit einem unserer Office-Supportmitarbeiter zu verbinden.

×