Bei Microsoft anmelden
Melden Sie sich an, oder erstellen Sie ein Konto.
Hallo,
Wählen Sie ein anderes Konto aus.
Sie haben mehrere Konten.
Wählen Sie das Konto aus, mit dem Sie sich anmelden möchten.

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 for Applications) einfügen. Mit dieser Funktion können Sie Dollar- und Centbeträge in Wörter mit einer Formel konvertieren, sodass 22,50 als Twenty-Two Dollar und Fünfzig Cent gelesen werden. Dies kann sehr nützlich sein, wenn Sie Excel als Vorlage zum Drucken von Überprüfungen verwenden.

Wenn Sie numerische Werte in das Textformat konvertieren möchten, ohne sie als Wörter anzuzeigen, verwenden Sie stattdessen die TEXT-Funktion .

Hinweis: Microsoft stellt Programmierbeispiele nur zur Veranschaulichung zur Verfügung, ohne ausdrückliche oder stillschweigende Garantie. Dies schließt die stillschweigende Gewährleistung der Marktgängigkeit oder der Eignung für einen bestimmten Zweck ein, ist aber nicht darauf beschränkt. In diesem Artikel wird davon ausgegangen, dass Sie mit der Programmiersprache VBA und den Tools vertraut sind, die zum Erstellen und Debuggen von Prozeduren verwendet werden. Die Support-Techniker von Microsoft können Ihnen die Funktionalität eines bestimmten Verfahrens erklären. Sie ändern diese Beispiele jedoch nicht, um zusätzliche Funktionen bereitzustellen, oder erstellen Prozeduren, 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 (VBE) 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 wird als benutzerdefinierte Funktion (User Defined Function, UDF) bezeichnet und automatisiert die Konvertierung von Zahlen in Text im gesamten 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 SpellNumber-Funktion kann jetzt verwendet werden.

    Hinweis: Diese Funktion funktioniert nur für die aktuelle Arbeitsmappe. Um diese Funktion in einer anderen Arbeitsmappe zu verwenden, müssen Sie die Schritte zum Kopieren und Einfügen des Codes in dieser Arbeitsmappe wiederholen.

Seitenanfang

Verwenden der SpellNumber-Funktion in einzelnen Zellen

  1. Geben Sie die Formel =SpellNumber(A1) in die Zelle ein, in der eine geschriebene Zahl angezeigt werden soll, wobei A1 die Zelle ist, die die Zahl enthält, die Sie konvertieren möchten. Sie können den Wert wie =SpellNumber(22.50) auch manuell eingeben.

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

Seitenanfang

Speichern der SpellNumber-Funktion in einer Arbeitsmappe

Excel kann keine Arbeitsmappe mit Makrofunktionen im standardmakrofreien Arbeitsmappenformat (.xlsx) speichern. Wenn Sie auf Datei > Speichern. Ein VB-Projektdialogfeld wird geöffnet. Klicken Sie auf Nein.

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

Sie können Ihre Datei als Excel-Macro-Enabled-Arbeitsmappe (XLSM) speichern, um die Datei im aktuellen Format beizubehalten.

  1. Klicken Sie auf Datei > Speichern unter.

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

  3. Klicken Sie auf Speichern.

Seitenanfang

Siehe auch

TEXT-Funktion

Benötigen Sie weitere Hilfe?

Möchten Sie weitere Optionen?

Erkunden Sie die Abonnementvorteile, durchsuchen Sie Trainingskurse, erfahren Sie, wie Sie Ihr Gerät schützen und vieles mehr.

In den Communities können Sie Fragen stellen und beantworten, Feedback geben und von Experten mit umfassendem Wissen hören.

War diese Information hilfreich?

Wie zufrieden sind Sie mit der Sprachqualität?
Was hat Ihre Erfahrung beeinflusst?
Wenn Sie auf "Absenden" klicken, wird Ihr Feedback zur Verbesserung von Produkten und Diensten von Microsoft verwendet. Ihr IT-Administrator kann diese Daten sammeln. Datenschutzbestimmungen.

Vielen Dank für Ihr Feedback!

×