Làm thế nào để nhanh chóng chuyển đổi số sang từ tiếng Anh trong Excel?
Nếu bạn có một cột giá trị số trong một trang tính và bây giờ bạn cần quy ước chúng thành các từ tiếng Anh tương đương hoặc các từ tiền tệ tiếng Anh như hình minh họa sau. Ở đây tôi sẽ nói về cách thay đổi các con số sang các từ tiếng Anh một cách nhanh chóng và dễ dàng.
![]() |
![]() |
Chuyển đổi số sang các từ tiếng Anh với chức năng do người dùng xác định
Chuyển đổi số sang các từ đơn vị tiền tệ với Chức năng do Người dùng Xác định
Chuyển đổi số sang từ tiền tệ với một tính năng hữu ích
Chuyển đổi số sang các từ tiếng Anh với chức năng do người dùng xác định
Không có tính năng hoặc công thức nào có thể giúp bạn giải quyết công việc này trực tiếp trong Excel, nhưng bạn có thể tạo một Hàm do người dùng xác định để hoàn thành nó. Vui lòng thực hiện theo các bước sau:
1. Giữ phím tắt ALT + F11 chìa khóa và nó mở Cửa sổ Microsoft Visual Basic cho ứng dụng.
2. Nhấp chuột Chèn > Mô-đunvà dán mã sau vào Cửa sổ mô-đun.
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. Lưu và đóng mã này và quay lại trang tính, trong một ô trống, hãy nhập công thức này = NumberstoWords (A2)( A2 là ô bạn muốn chuyển đổi số thành một từ tiếng Anh), xem ảnh chụp màn hình:
4. Sau đó nhấn đăng ký hạng mục thi và chọn ô C2, sau đó kéo chốt điền vào phạm vi mà bạn muốn chứa công thức này. Tất cả các giá trị số đã được chuyển đổi từ tiếng Anh tương ứng của chúng.
Chú thích: Mã này chỉ hoạt động cho số nguyên nhưng không áp dụng cho số thập phân.
Chuyển đổi số sang các từ đơn vị tiền tệ với Chức năng do Người dùng Xác định
Nếu bạn muốn chuyển đổi các số sang các từ tiền tệ tiếng Anh, bạn nên áp dụng mã VBA bên dưới.
1. Giữ phím tắt ALT + F11 chìa khóa và nó mở Cửa sổ Microsoft Visual Basic cho ứng dụng.
2. Nhấp chuột Chèn > Mô-đunvà dán mã sau vào Cửa sổ mô-đun.
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. Lưu mã này và quay lại trang tính, trong một ô trống, hãy nhập công thức này = SpellNumberToEnglish (A2)( A2 là ô bạn muốn chuyển đổi số thành một từ đơn vị tiền tệ tiếng Anh), sau đó kéo chốt điền xuống các ô mà bạn muốn áp dụng công thức này, tất cả các số đã được đánh vần thành các từ đơn vị tiền tệ tiếng Anh, xem ảnh chụp màn hình:
Chuyển đổi số sang từ tiền tệ với một tính năng hữu ích
Đoạn mã trên hơi rắc rối cho người mới bắt đầu sử dụng Excel, sau đây, tôi sẽ giới thiệu một tính năng hữu ích, Kutools for Excel's Số thành từ, với tiện ích này, bạn có thể nhanh chóng đánh vần các số thành từ tiếng Anh hoặc từ tiền tệ.
Lời khuyên:Để áp dụng điều này Số thành từ , trước tiên, bạn nên tải xuống Kutools for Excel, và sau đó áp dụng tính năng một cách nhanh chóng và dễ dàng.
Sau khi cài đặt Kutools for Excel, hãy làm như sau:
1. Chọn danh sách các số bạn muốn chuyển đổi, sau đó bấm Kutools > Nội dung > Số thành từ, xem ảnh chụp màn hình:
2. Trong Số cho từ tiền tệ hộp dialoge, kiểm tra Tiếng Anh tùy chọn từ Ngôn ngữ hộp danh sách, sau đó bấm Ok , bạn sẽ thấy tất cả các số đã được viết thành các từ đơn vị tiền tệ tiếng Anh:
![]() |
![]() |
![]() |
Lời khuyên: Nếu bạn muốn lấy các từ tiếng Anh, vui lòng kiểm tra Không được chuyển đổi sang tiền tệ hộp kiểm từ Các lựa chọn , xem ảnh chụp màn hình:
![]() |
![]() |
![]() |
Nhấp để Tải xuống Kutools for Excel và dùng thử miễn phí ngay bây giờ!
Công cụ năng suất văn phòng tốt nhất
Nâng cao kỹ năng Excel của bạn với Kutools for Excelvà trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel Cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian. Bấm vào đây để có được tính năng bạn cần nhất...
Office Tab Mang giao diện theo thẻ vào Office và giúp công việc của bạn dễ dàng hơn nhiều
- Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
- Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
- Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!














