Μετάβαση στο κύριο περιεχόμενο

Πώς να μετατρέψετε γρήγορα αριθμούς σε αγγλικές λέξεις στο Excel;

Συγγραφέας: Xiaoyang Τελευταία τροποποίηση: 2024-07-19

Η μετατροπή αριθμών σε λέξεις στο Excel είναι χρήσιμη για την προετοιμασία οικονομικών αναφορών, νομικών εγγράφων ή επιταγών όπου πρέπει να διευκρινίσετε τα ποσά. Ενώ το Excel δεν προσφέρει μια ενσωματωμένη λειτουργία για τη μετατροπή αριθμών απευθείας σε λέξεις, υπάρχουν πολλές μέθοδοι που μπορείτε να χρησιμοποιήσετε για να το πετύχετε αυτό, από τη χρήση μακροεντολής Visual Basic for Applications (VBA) έως πρόσθετα τρίτων και διαδικτυακά εργαλεία. Παρακάτω, θα εξερευνήσουμε μερικές από αυτές τις μεθόδους για να σας βοηθήσουμε να βρείτε την καλύτερη λύση για τις ανάγκες σας.


Μετατροπή αριθμών σε λέξεις νομίσματος με τη λειτουργία που καθορίζεται από το χρήστη

Εάν θέλετε να μετατρέψετε τους αριθμούς σε λέξεις αγγλικού νομίσματος, θα πρέπει να εφαρμόσετε τον παρακάτω κωδικό VBA.

1. Κρατήστε πατημένο το ALT + F11 και ανοίγει το Παράθυρο Microsoft Visual Basic for Applications.

2. Κλίκ Κύριο θέμα > Μονάδα μέτρησηςκαι επικολλήστε τον ακόλουθο κώδικα στο Παράθυρο ενότητας.

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. Αποθηκεύστε αυτόν τον κωδικό και επιστρέψτε το φύλλο εργασίας, σε ένα κενό κελί, εισαγάγετε αυτόν τον τύπο = SpellNumberToEnglish (Α2)( A2 είναι το κελί που θέλετε να μετατρέψετε τον αριθμό σε λέξη σε αγγλικό νόμισμα) και, στη συνέχεια, σύρετε τη λαβή πλήρωσης προς τα κάτω στα κελιά που θέλετε να εφαρμόσετε αυτόν τον τύπο, όλοι οι αριθμοί έχουν διατυπωθεί σε λέξεις αγγλικού νομίσματος, δείτε το στιγμιότυπο οθόνης:

μετατρέψτε τους αριθμούς σε αγγλικές λέξεις


Μετατροπή αριθμών σε λέξεις νομίσματος με μια χρήσιμη λειτουργία

Διατυπώστε τους αριθμούς σε λέξεις χωρίς κόπο με το Kutools για Excel! Είτε χρειάζεστε εκφράσεις αγγλικών νομισμάτων είτε γερμανικούς αριθμούς, Kutools» Αριθμοί σε λέξεις Η λειτουργία υποστηρίζει περισσότερες από 40 γλώσσες, βελτιστοποιώντας τη ροή εργασίας σας. Απλοποιήστε τις οικονομικές σας αναφορές, τα νομικά έγγραφα και πολλά άλλα μετατρέποντας τις αριθμητικές τιμές σε ακριβείς γραπτές λέξεις με λίγα μόνο κλικ. Ανακαλύψτε πώς το Kutools για Excel μπορεί να κάνει την επεξεργασία των δεδομένων σας ταχύτερη και πιο ακριβή. Δοκιμάστε το σήμερα και ζήστε τη δύναμη της αποτελεσματικότητας!

Kutools για Excel προσφέρει πάνω από 300 προηγμένες λειτουργίες για τον εξορθολογισμό σύνθετων εργασιών, ενισχύοντας τη δημιουργικότητα και την αποτελεσματικότητα. Ενισχυμένο με δυνατότητες τεχνητής νοημοσύνης, το Kutools αυτοματοποιεί τις εργασίες με ακρίβεια, κάνοντας τη διαχείριση δεδομένων αβίαστη. Διαβάστε περισσότερα ...         Δωρεάν δοκιμή...

Μετά την εγκατάσταση Kutools για Excel, κάντε το ως εξής:

1. Επιλέξτε τη λίστα των αριθμών που θέλετε να μετατρέψετε και, στη συνέχεια, κάντε κλικ στο Kutools > Περιεχόμενο > Αριθμοί σε λέξεις, δείτε το στιγμιότυπο οθόνης:

μετατρέψτε τους αριθμούς σε αγγλικές λέξεις

2. Στην Αριθμοί σε λέξεις νομίσματος παράθυρο διαλόγου, επιλέξτε τη γλώσσα που θέλετε να χρησιμοποιήσετε, εδώ θα επιλέξω Αγγλικά Επιλογή από το Γλώσσες πλαίσιο λίστας, δείτε το στιγμιότυπο οθόνης:

μετατρέψτε τους αριθμούς σε αγγλικές λέξεις

3. Και στη συνέχεια κάντε κλικ στο κουμπί OK κουμπί, θα δείτε ότι όλοι οι αριθμοί έχουν διατυπωθεί σε αγγλικές νομισματικές λέξεις:

μετατρέψτε τους αριθμούς σε αγγλικές λέξεις

Συμβουλές: Εάν θέλετε να λάβετε μόνο τις αγγλικές λέξεις, όχι τις λέξεις νομίσματος, ελέγξτε το Δεν μετατράπηκε σε Νόμισμα πλαίσιο ελέγχου από το Επιλογές ενότητα, δείτε το στιγμιότυπο οθόνης:

μετατρέψτε τους αριθμούς σε αγγλικές λέξεις


Μετατροπή αριθμών σε αγγλικές λέξεις με λειτουργία που καθορίζεται από το χρήστη

Δεν υπάρχουν δυνατότητες ή τύποι που μπορούν να σας βοηθήσουν να επιλύσετε αυτήν την εργασία απευθείας στο Excel, αλλά μπορείτε να δημιουργήσετε μια συνάρτηση καθορισμένη από το χρήστη για να την ολοκληρώσετε. Κάντε τα παρακάτω βήματα:

1. Κρατήστε πατημένο το ALT + F11 και ανοίγει το Παράθυρο Microsoft Visual Basic for Applications.

2. Κλίκ Κύριο θέμα > Μονάδα μέτρησηςκαι επικολλήστε τον ακόλουθο κώδικα στο Παράθυρο ενότητας.

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. Αποθηκεύστε και κλείστε αυτόν τον κωδικό και επιστρέψτε το φύλλο εργασίας, σε ένα κενό κελί, εισαγάγετε αυτόν τον τύπο = NumberstoWords (Α2)( A2 είναι το κελί που θέλετε να μετατρέψετε τον αριθμό σε αγγλική λέξη), δείτε το στιγμιότυπο οθόνης:

μετατρέψτε τους αριθμούς σε αγγλικές λέξεις

4. Στη συνέχεια πατήστε εισάγετε και επιλέξτε το κελί C2 και μετά σύρετε τη λαβή πλήρωσης στο εύρος που θέλετε να περιέχει αυτόν τον τύπο. Όλες οι αριθμητικές τιμές έχουν μετατραπεί στις αντίστοιχες αγγλικές λέξεις.

μετατρέψτε τους αριθμούς σε αγγλικές λέξεις

Σημείωση: Αυτός ο κωδικός λειτουργεί μόνο για ακέραιους αριθμούς, αλλά δεν ισχύει για τους δεκαδικούς αριθμούς.

Η επιλογή της σωστής μεθόδου εξαρτάται από την προτίμησή σας και τη συχνότητα της ανάγκης σας να μετατρέψετε αριθμούς σε λέξεις στο Excel. Το VBA προσφέρει τη μεγαλύτερη ευελιξία και ενοποίηση στο Excel, ενώ τα πρόσθετα μπορούν να παρέχουν μια απλούστερη λύση. Ακολουθώντας αυτές τις μεθόδους, μπορείτε να μετατρέψετε αποτελεσματικά αριθμούς σε λέξεις στο φύλλο εργασίας του Excel. Εάν ενδιαφέρεστε να εξερευνήσετε περισσότερες συμβουλές και κόλπα για το Excel, ο ιστότοπός μας προσφέρει χιλιάδες εκπαιδευτικά προγράμματα. Κάντε κλικ εδώ για πρόσβαση σε αυτά.

Τα καλύτερα εργαλεία παραγωγικότητας γραφείου

🤖 Kutools AI Aide: Επανάσταση στην ανάλυση δεδομένων με βάση: Ευφυής Εκτέλεση   |  Δημιουργία κώδικα  |  Δημιουργία προσαρμοσμένων τύπων  |  Αναλύστε δεδομένα και δημιουργήστε γραφήματα  |  Επίκληση Λειτουργιών Kutools...
Δημοφιλή χαρακτηριστικά: Εύρεση, επισήμανση ή αναγνώριση διπλότυπων   |  Διαγραφή κενών γραμμών   |  Συνδυάστε στήλες ή κελιά χωρίς απώλεια δεδομένων   |   Γύρος χωρίς φόρμουλα ...
Σούπερ Αναζήτηση: VLookup πολλαπλών κριτηρίων    VLookup πολλαπλών τιμών  |   VLookup σε πολλά φύλλα   |   Ασαφής αναζήτηση ....
Σύνθετη αναπτυσσόμενη λίστα: Γρήγορη δημιουργία αναπτυσσόμενης λίστας   |  Εξαρτημένη αναπτυσσόμενη λίστα   |  Πολλαπλή αναπτυσσόμενη λίστα ....
Διαχειριστής στήλης: Προσθέστε έναν συγκεκριμένο αριθμό στηλών  |  Μετακίνηση στηλών  |  Εναλλαγή κατάστασης ορατότητας κρυφών στηλών  |  Συγκρίνετε εύρη και στήλες ...
Επιλεγμένα Χαρακτηριστικά: Εστίαση πλέγματος   |  Προβολή σχεδίου   |   Μεγάλη Formula Bar    Διαχείριση βιβλίου εργασίας & φύλλου   |  Βιβλιοθήκη πόρων (Αυτόματο κείμενο)   |  Επιλογή ημερομηνίας   |  Συνδυάστε φύλλα εργασίας   |  Κρυπτογράφηση/Αποκρυπτογράφηση κελιών    Αποστολή email ανά λίστα   |  Σούπερ φίλτρο   |   Ειδικό φίλτρο (φίλτρο με έντονη γραφή/πλάγια γραφή/διαγραφή...) ...
Κορυφαία 15 σύνολα εργαλείων12 Κείμενο Εργαλεία (Προσθήκη κειμένου, Κατάργηση χαρακτήρων, ...)   |   50 + Διάγραμμα Τύποι (Gantt διάγραμμα, ...)   |   40+ Πρακτικό ΜΑΘΗΜΑΤΙΚΟΙ τυποι (Υπολογίστε την ηλικία με βάση τα γενέθλια, ...)   |   19 Εισαγωγή Εργαλεία (Εισαγωγή κωδικού QR, Εισαγωγή εικόνας από το μονοπάτι, ...)   |   12 Μετατροπή Εργαλεία (Αριθμοί σε λέξεις, Μετατροπή Συναλλάγματος, ...)   |   7 Συγχώνευση & διαχωρισμός Εργαλεία (Σύνθετες σειρές συνδυασμού, Διαίρεση κελιών, ...)   |   ... κι αλλα

Αυξήστε τις δεξιότητές σας στο Excel με τα Kutools για Excel και απολαύστε την αποτελεσματικότητα όπως ποτέ πριν. Το Kutools για Excel προσφέρει πάνω από 300 προηγμένες δυνατότητες για την ενίσχυση της παραγωγικότητας και την εξοικονόμηση χρόνου.  Κάντε κλικ εδώ για να αποκτήσετε τη δυνατότητα που χρειάζεστε περισσότερο...

Περιγραφή


Το Office Tab φέρνει τη διεπαφή με καρτέλες στο Office και κάνει την εργασία σας πολύ πιο εύκολη

  • Ενεργοποίηση επεξεργασίας και ανάγνωσης καρτελών σε Word, Excel, PowerPoint, Publisher, Access, Visio και Project.
  • Ανοίξτε και δημιουργήστε πολλά έγγραφα σε νέες καρτέλες του ίδιου παραθύρου και όχι σε νέα παράθυρα.
  • Αυξάνει την παραγωγικότητά σας κατά 50% και μειώνει εκατοντάδες κλικ του ποντικιού για εσάς κάθε μέρα!
Comments (67)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Code is working,I need this change can someone help me like for 30 I need three zero in words . In this when I alter zero is not coming so how to do
This comment was minimized by the moderator on the site
Hello dear.
It work good but after reopening the file. function is not working. what is the reason....? it can be solved or copy paste every time while open the same file.
This comment was minimized by the moderator on the site
Hello, Sheraz,
To keep the code work correctly, you should save the workbbok as Excel Macro-Enabled Workbook format. This file format will save the vba code.
Please try, hope it can help you!
This comment was minimized by the moderator on the site
Thank you for sharing such a wonderful program.

Kindly advise, I want to convert figures into words like "515,253.33" to show as Five Hundred Fifteen Thousand Two Hundred Fifty Three and Cents Thirty Three Only. Also it should not show "Dollars"
Warm regards,
Khozema
This comment was minimized by the moderator on the site
HI SIR/MADAM,

ITS WORKING GOOD BUT I NEED ONE THINK TO ADD "LAKS & CROSE" HOW TO ADD PLESE ATTACHED THIS CODE TO ME THANKS
This comment was minimized by the moderator on the site
Thank you so much... it works awesome
There are no comments posted here yet
Load More
Leave your comments
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations