Wie konvertiere ich schnell Zahlen in englische Wörter in Excel?
Das Umwandeln von Zahlen in Wörter in Excel ist nützlich, wenn Sie Finanzberichte, juristische Dokumente oder Schecks erstellen, bei denen Sie Beträge ausschreiben müssen. Obwohl Excel keine integrierte Funktion zum direkten Umwandeln von Zahlen in Wörter bietet, gibt es mehrere Methoden, mit denen Sie dies erreichen können, angefangen von der Verwendung eines Visual Basic for Applications (VBA)-Makros bis hin zu Add-Ins von Drittanbietern und Onlinetools. Im Folgenden werden einige dieser Methoden erläutert, damit Sie die beste Lösung für Ihre Anforderungen finden.
Konvertieren Sie Zahlen mit der benutzerdefinierten Funktion in Währungswörter
Wenn Sie die Zahlen in englische Währungswörter umrechnen möchten, sollten Sie den folgenden VBA-Code anwenden.
1. Halten Sie die ALT + F11 Tasten, und es öffnet die Microsoft Visual Basic für Anwendungsfenster.
2. Klicken Sie Insert > Modulund fügen Sie den folgenden Code in das Feld ein Modulfenster.
Function SpellNumberToEnglish(ByVal pNumber)
'Update by Extendoffice
Dim Dollars, Cents
arr = Array("", "", " Thousand ", " Million ", " Billion ", " Trillion ")
pNumber = Trim(Str(pNumber))
xDecimal = InStr(pNumber, ".")
If xDecimal > 0 Then
Cents = GetTens(Left(Mid(pNumber, xDecimal + 1) & "00", 2))
pNumber = Trim(Left(pNumber, xDecimal - 1))
End If
xIndex = 1
Do While pNumber <> ""
xHundred = ""
xValue = Right(pNumber, 3)
If Val(xValue) <> 0 Then
xValue = Right("000" & xValue, 3)
If Mid(xValue, 1, 1) <> "0" Then
xHundred = GetDigit(Mid(xValue, 1, 1)) & " Hundred "
End If
If Mid(xValue, 2, 1) <> "0" Then
xHundred = xHundred & GetTens(Mid(xValue, 2))
Else
xHundred = xHundred & GetDigit(Mid(xValue, 3))
End If
End If
If xHundred <> "" Then
Dollars = xHundred & arr(xIndex) & Dollars
End If
If Len(pNumber) > 3 Then
pNumber = Left(pNumber, Len(pNumber) - 3)
Else
pNumber = ""
End If
xIndex = xIndex + 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
SpellNumberToEnglish = Dollars & Cents
End Function
Function GetTens(pTens)
Dim Result As String
Result = ""
If Val(Left(pTens, 1)) = 1 Then
Select Case Val(pTens)
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
Select Case Val(Left(pTens, 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(pTens, 1))
End If
GetTens = Result
End Function
Function GetDigit(pDigit)
Select Case Val(pDigit)
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
3. Speichern Sie diesen Code und gehen Sie zum Arbeitsblatt zurück. Geben Sie diese Formel in eine leere Zelle ein = SpellNumberToEnglish (A2)( A2 ist die Zelle, in die Sie die Zahl in ein englisches Währungswort umwandeln möchten) und ziehen Sie dann den Füllpunkt nach unten zu den Zellen, auf die Sie diese Formel anwenden möchten. Alle Zahlen wurden in englische Währungswörter geschrieben (siehe Abbildung):
Konvertieren Sie Zahlen in Währungswörter mit einer nützlichen Funktion
Mit Kutools für Excel können Sie Zahlen mühelos in Worte fassen! Ob Sie englische Währungsausdrücke oder deutsche Ziffern benötigen, Kutoolen' Zahlen zu Wörtern Die Funktion unterstützt über 40 Sprachen und optimiert so Ihren Arbeitsablauf. Vereinfachen Sie Ihre Finanzberichte, Rechtsdokumente und mehr, indem Sie numerische Werte mit nur wenigen Klicks in präzise geschriebene Wörter umwandeln. Entdecken Sie, wie Kutools für Excel Ihre Datenverarbeitung schneller und genauer machen kann. Probieren Sie es noch heute aus und erleben Sie die Kraft der Effizienz!
Nach der Installation Kutools for ExcelBitte machen Sie Folgendes:
1. Wählen Sie die Liste der Zahlen aus, die Sie konvertieren möchten, und klicken Sie dann auf Kutoolen > Inhalt > Zahlen zu Wörtern, siehe Screenshot:
2. In dem Zahlen zu Währungswörtern Dialogfeld, wählen Sie die Sprache, die Sie verwenden möchten, hier werde ich wählen Englisch Option von der Sprachen Listenfeld, siehe Screenshot:
3. Und dann klick OK Klicken Sie auf die Schaltfläche, um zu sehen, dass alle Zahlen in englischen Währungswörtern geschrieben wurden:
Trinkgeld: Wenn Sie nur die englischen Wörter, keine Währungswörter erhalten möchten, aktivieren Sie bitte das Kontrollkästchen Nicht in Währung umgerechnet Kontrollkästchen aus dem Optionen Abschnitt, siehe Screenshot:
Konvertieren Sie Zahlen mit der benutzerdefinierten Funktion in englische Wörter
Es gibt keine Funktionen oder Formeln, mit denen Sie diese Aufgabe direkt in Excel lösen können. Sie können jedoch eine benutzerdefinierte Funktion erstellen, um sie zu beenden. Bitte machen Sie folgende Schritte:
1. Halten Sie die ALT + F11 Tasten, und es öffnet die Microsoft Visual Basic für Anwendungsfenster.
2. Klicken Sie Insert > Modulund fügen Sie den folgenden Code in das Feld ein Modulfenster.
Function NumberstoWords(ByVal MyNumber)
'Update by Extendoffice
Dim xStr As String
Dim xFNum As Integer
Dim xStrPoint
Dim xStrNumber
Dim xPoint As String
Dim xNumber As String
Dim xP() As Variant
Dim xDP
Dim xCnt As Integer
Dim xResult, xT As String
Dim xLen As Integer
On Error Resume Next
xP = Array("", "Thousand ", "Million ", "Billion ", "Trillion ", " ", " ", " ", " ")
xNumber = Trim(Str(MyNumber))
xDP = InStr(xNumber, ".")
xPoint = ""
xStrNumber = ""
If xDP > 0 Then
xPoint = " point "
xStr = Mid(xNumber, xDP + 1)
xStrPoint = Left(xStr, Len(xNumber) - xDP)
For xFNum = 1 To Len(xStrPoint)
xStr = Mid(xStrPoint, xFNum, 1)
xPoint = xPoint & GetDigits(xStr) & " "
Next xFNum
xNumber = Trim(Left(xNumber, xDP - 1))
End If
xCnt = 0
xResult = ""
xT = ""
xLen = 0
xLen = Int(Len(Str(xNumber)) / 3)
If (Len(Str(xNumber)) Mod 3) = 0 Then xLen = xLen - 1
Do While xNumber <> ""
If xLen = xCnt Then
xT = GetHundredsDigits(Right(xNumber, 3), False)
Else
If xCnt = 0 Then
xT = GetHundredsDigits(Right(xNumber, 3), True)
Else
xT = GetHundredsDigits(Right(xNumber, 3), False)
End If
End If
If xT <> "" Then
xResult = xT & xP(xCnt) & xResult
End If
If Len(xNumber) > 3 Then
xNumber = Left(xNumber, Len(xNumber) - 3)
Else
xNumber = ""
End If
xCnt = xCnt + 1
Loop
xResult = xResult & xPoint
NumberstoWords = xResult
End Function
Function GetHundredsDigits(xHDgt, xB As Boolean)
Dim xRStr As String
Dim xStrNum As String
Dim xStr As String
Dim xI As Integer
Dim xBB As Boolean
xStrNum = xHDgt
xRStr = ""
On Error Resume Next
xBB = True
If Val(xStrNum) = 0 Then Exit Function
xStrNum = Right("000" & xStrNum, 3)
xStr = Mid(xStrNum, 1, 1)
If xStr <> "0" Then
xRStr = GetDigits(Mid(xStrNum, 1, 1)) & "Hundred "
Else
If xB Then
xRStr = "and "
xBB = False
Else
xRStr = " "
xBB = False
End If
End If
If Mid(xStrNum, 2, 2) <> "00" Then
xRStr = xRStr & GetTenDigits(Mid(xStrNum, 2, 2), xBB)
End If
GetHundredsDigits = xRStr
End Function
Function GetTenDigits(xTDgt, xB As Boolean)
Dim xStr As String
Dim xI As Integer
Dim xArr_1() As Variant
Dim xArr_2() As Variant
Dim xT As Boolean
xArr_1 = Array("Ten ", "Eleven ", "Twelve ", "Thirteen ", "Fourteen ", "Fifteen ", "Sixteen ", "Seventeen ", "Eighteen ", "Nineteen ")
xArr_2 = Array("", "", "Twenty ", "Thirty ", "Forty ", "Fifty ", "Sixty ", "Seventy ", "Eighty ", "Ninety ")
xStr = ""
xT = True
On Error Resume Next
If Val(Left(xTDgt, 1)) = 1 Then
xI = Val(Right(xTDgt, 1))
If xB Then xStr = "and "
xStr = xStr & xArr_1(xI)
Else
xI = Val(Left(xTDgt, 1))
If Val(Left(xTDgt, 1)) > 1 Then
If xB Then xStr = "and "
xStr = xStr & xArr_2(Val(Left(xTDgt, 1)))
xT = False
End If
If xStr = "" Then
If xB Then
xStr = "and "
End If
End If
If Right(xTDgt, 1) <> "0" Then
xStr = xStr & GetDigits(Right(xTDgt, 1))
End If
End If
GetTenDigits = xStr
End Function
Function GetDigits(xDgt)
Dim xStr As String
Dim xArr_1() As Variant
xArr_1 = Array("Zero ", "One ", "Two ", "Three ", "Four ", "Five ", "Six ", "Seven ", "Eight ", "Nine ")
xStr = ""
On Error Resume Next
xStr = xArr_1(Val(xDgt))
GetDigits = xStr
End Function
3. Speichern und schließen Sie diesen Code und gehen Sie zum Arbeitsblatt zurück. Geben Sie in einer leeren Zelle diese Formel ein = NumberstoWords (A2)( A2 ist die Zelle, in die Sie die Zahl in ein englisches Wort umwandeln möchten), siehe Screenshot:
4. Dann drücken Enter Drücken Sie die Taste und wählen Sie Zelle C2 aus. Ziehen Sie dann den Füllpunkt in den Bereich, in dem Sie diese Formel enthalten möchten. Alle numerischen Werte wurden in die entsprechenden englischen Wörter konvertiert.
Die Wahl der richtigen Methode hängt von Ihren Vorlieben und der Häufigkeit ab, mit der Sie Zahlen in Excel in Wörter umwandeln müssen. VBA bietet die größte Flexibilität und Integration in Excel, während Add-Ins eine einfachere Lösung bieten können. Mit diesen Methoden können Sie Zahlen in Ihrem Excel-Arbeitsblatt effizient in Wörter umwandeln. Wenn Sie weitere Excel-Tipps und -Tricks entdecken möchten, finden Sie auf unserer Website Tausende von Tutorials. Klicken Sie hier, um darauf zuzugreifen.
Beste Office-Produktivitätstools
Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über 300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen ...
Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich
- Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
- Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!