• TRANG CHỦ
  • THỦ THUẬT
    • Thủ thuật máy tính
    • Thủ thuật văn phòng
    • Thủ thuật Internet
    • Thủ thuật điện thoại
  • CHIA SẺ PHẦN MỀM
  • DIỆT VIRUS
  • CÔNG NGHỆ SỐ
  • THỦ THUẬT OFFICE
  • HỖ TRỢ
  • DỊCH VỤ
    • Sửa máy tính tại nhà

Blog thủ thuật máy tính - Thủ thuật windows

Blog chia sẻ thủ thuật máy tính và thủ thuật windows, lưu lại những kiến thức trong quá trình mình làm việc

You are here: Home / Thủ thuật Office / Hàm chuyển số sang chữ trong Excel

Hàm chuyển số sang chữ trong Excel

March 15, 2016 By Chu Quang

Hiện nay, việc chuyển đổi số thành chữ trong Excel đã không còn phải làm thủ công và mất thời gian như trước bởi đã có sự hỗ trợ của các tiện ích (Add-ins). Đây là những tiện ích được phát triển bởi một nhóm lập trình nào đó hay một công ty. Tuy nhiên, các tiện ích này đã được biên dịch nên bạn không thể xem và chỉnh sửa Code theo ý muốn. Vậy bạn có muốn viết 1 hàm chuyển đổi số sang chữ cho riêng mình ngay trên phần mềm Excel không? Cuuhotinhoc.com sẽ hướng dẫn các bạn viết hàm chuyển số sang chữ và sử dụng hàm này như các hàm thông dụng khác trong Excel như AVERAGE, SUM, IF, COUT, …

Nội dung

  1. 1. Khởi động Microsoft Excel
  2. 2. Đổi tên 1 Sheet bất kỳ thành Chuso
  3. 3. Nhấn ALT + F11 để bắt đầu Visual Basic Editor
  4. 4. Nhập toàn bộ đoạn mã sau
  5. 5. Quay lại màn hình Excel và sử dụng hàm vừa tạo
    1. Bài viết liên quan:

1. Khởi động Microsoft Excel

2. Đổi tên 1 Sheet bất kỳ thành Chuso

Sheet này chứa tất cả các ký tự phục vụ việc chuyển số sang chữ do việc nhập ký tự tiếng việt tại màn hình soạn thảo Code bị lỗi. Như vậy, chữ số được để trong Sheet giúp người sử dụng dễ dàng thay đổi các mã font như: Unicode, TCVN3, VNI tùy ý. Sheet Chuso sau khi nhập xong dữ liệu sẽ như hình dưới:
Ham chuyen so sang chu trong excel

3. Nhấn ALT + F11 để bắt đầu Visual Basic Editor

Trong menu Insert chọn Module
Ham chuyen so sang chu trong excel

4. Nhập toàn bộ đoạn mã sau

Function ReadNumber(ByVal MyNumber)
Dim VND_Dong, VND_Xu, Temp
Dim DecimalPlace, Count
ReDim Place(9) As String

‘Tham chieu den cac o trong Sheet Chuso de lay gia tri
Place(2) = ActiveWorkbook.Sheets(“Chuso”).Range(“D2”).Value
Place(3) = ActiveWorkbook.Sheets(“Chuso”).Range(“D3”).Value
Place(4) = ActiveWorkbook.Sheets(“Chuso”).Range(“D4”).Value
Place(5) = ActiveWorkbook.Sheets(“Chuso”).Range(“D5”).Value

MyNumber = Trim(Str(MyNumber))
DecimalPlace = InStr(MyNumber, “.”)

If DecimalPlace > 0 Then
VND_Xu = 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 VND_Dong = Temp & Place(Count) & VND_Dong
If Len(MyNumber) > 3 Then
MyNumber = Left(MyNumber, Len(MyNumber) – 3)
Else
MyNumber = “”
End If
Count = Count + 1
Loop
Select Case VND_Dong
Case “”
VND_Dong = ActiveWorkbook.Sheets(“Chuso”).Range(“D8”).Value  ‘Khong Dong
Case “One”
VND_Dong = ActiveWorkbook.Sheets(“Chuso”).Range(“D9”).Value  ‘Mot Dong
Case Else
VND_Dong = VND_Dong & ActiveWorkbook.Sheets(“Chuso”).Range(“D7”).Value  ‘Dong
End Select
‘Doi voi Xu
Select Case VND_Xu
Case “”
VND_Xu = ActiveWorkbook.Sheets(“Chuso”).Range(“D11”).Value  ‘Khong xu
Case “One”
VND_Xu = ActiveWorkbook.Sheets(“Chuso”).Range(“D12″).Value  ‘Mot xu
Case Else
VND_Xu = ” và ” & VND_Xu & ActiveWorkbook.Sheets(“Chuso”).Range(“D10”).Value  ‘Xu
End Select
‘Cat bo khoang trang dau tien
VND_Dong = Right(VND_Dong, Len(VND_Dong) – 1)
‘Viet hoa chu cai dau tien
VND_Dong = UCase(Left(VND_Dong, 1)) & Right(VND_Dong, Len(VND_Dong) – 1)
ReadNumber = VND_Dong & VND_Xu
End Function

‘Chuyen doi so tu 100->999 sang chu
Function GetHundreds(ByVal MyNumber)
Dim Result As String
If Val(MyNumber) = 0 Then Exit Function
MyNumber = Right(“000” & MyNumber, 3)
‘ Chuyen doi noi hang tram
If Mid(MyNumber, 1, 1) <> “0” Then
Result = GetDigit(Mid(MyNumber, 1, 1)) & ActiveWorkbook.Sheets(“Chuso”).Range(“D6”).Value ‘Tram
End If
‘ Chuyen doi hang chuc
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

‘Chuyen doi so tu 10->99 sang chu
Function GetTens(TensText)
Dim Result As String
Result = “”
If Val(Left(TensText, 1)) = 1 Then
‘Gia tri nam trong khoang tu 10->19
Select Case Val(TensText)
‘Tham chieu den O B2 de lay chu: muoi
Case 10: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“B2”).Value
Case 11: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“B3”).Value
Case 12: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“B4”).Value
Case 13: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“B5”).Value
Case 14: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“B6”).Value
Case 15: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“B7”).Value
Case 16: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“B8”).Value
Case 17: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“B9”).Value
Case 18: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“B10”).Value
Case 19: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“B11”).Value
Case Else
End Select
Else
‘Gia tri trong khoang tu 20->99
Select Case Val(Left(TensText, 1))
‘Tham chieu den O C2 de lay chu: hai muoi
Case 2: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“C2”).Value
Case 3: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“C3”).Value
Case 4: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“C4”).Value
Case 5: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“C5”).Value
Case 6: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“C6”).Value
Case 7: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“C7”).Value
Case 8: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“C8”).Value
Case 9: Result = ActiveWorkbook.Sheets(“Chuso”).Range(“C9”).Value
Case Else
End Select
Result = Result & GetDigit(Right(TensText, 1))
End If
GetTens = Result
End Function

‘Chuyen so tu 1->9 sang chu
Function GetDigit(Digit)
Select Case Val(Digit)
‘Tham chieu den O A2 de lay chu: mot
Case 1: GetDigit = ActiveWorkbook.Sheets(“Chuso”).Range(“A2”).Value
‘So hai
Case 2: GetDigit = ActiveWorkbook.Sheets(“Chuso”).Range(“A3”).Value
‘So ba
Case 3: GetDigit = ActiveWorkbook.Sheets(“Chuso”).Range(“A4”).Value
‘So bon
Case 4: GetDigit = ActiveWorkbook.Sheets(“Chuso”).Range(“A5”).Value
‘So nam
Case 5: GetDigit = ActiveWorkbook.Sheets(“Chuso”).Range(“A6”).Value
‘So sau
Case 6: GetDigit = ActiveWorkbook.Sheets(“Chuso”).Range(“A7”).Value
‘So bay
Case 7: GetDigit = ActiveWorkbook.Sheets(“Chuso”).Range(“A8”).Value
‘So tam
Case 8: GetDigit = ActiveWorkbook.Sheets(“Chuso”).Range(“A9”).Value
‘So chin
Case 9: GetDigit = ActiveWorkbook.Sheets(“Chuso”).Range(“A10”).Value
Case Else: GetDigit = “”
End Select
End Function

Click Save để lưu lại.

5. Quay lại màn hình Excel và sử dụng hàm vừa tạo

  • Cách 1:

Gọi hàm: =readnumber(Số cần chuyển)
Ví dụ: =readnumber(1546426)

  • Cách 2:

Gọi hàm: =readnumber(Địa chỉ ô cần chuyển)
Ví dụ: =readnumber(A4)
Trường hợp gặp phải giá trị trả về #NAME? trong Office 2007 thì bạn phải thực hiện theo các bước sau:
Click Office Button -> Excel Options -> Trust Center -> Trust Center Settings

Ham chuyen so sang chu trong excel

Chọn Macro Settings -> Enable all macros (not recommended; potentially dangerous code can run)

Ham chuyen so sang chu trong excel

Chọn OK để hoàn tất.

Hi vọng bài viết Hàm chuyển số sang chữ trong Excel giúp ích cho bạn trong nhiều công việc.

4.5/5 - (2 votes)

Bài viết liên quan:

  • Chatbots trong ngành công nghiệp trò chơi
  • Asus phát triển tài năng esports địa phương với Học viện ROG…
  • Chi tiết cách in ấn tài liệu trong word 2003, 2010, 2013,…
  • Cách sử dụng DNS Cloudflare 1.1.1.1 để truy cập các trang…
  • Các Bước Kiểm Tra Khi Mua Điện Thoại Cũ

Filed Under: Thủ thuật Office Tagged With: chuyển số sang chữ, Office, Thủ thuật Excel

Tìm kiếm

Newbie nên đọc

  • Dạy photoshop cơ bản
  • Thủ thuật Office
  • Tạo website đơn giản

Bài viết nổi bật

  • TOP 5+ Mẹo tăng tốc máy tính bị lag khi chơi game

    TOP 5+ Mẹo tăng tốc máy tính bị lag khi chơi game

  • Cách giúp máy tính không bị lag khi chơi game online

    Cách giúp máy tính không bị lag khi chơi game online

  • Cách sửa laptop bị lỗi màn hình xanh

    Cách sửa laptop bị lỗi màn hình xanh

  • Cách sử dụng DNS Cloudflare 1.1.1.1 để truy cập các trang web bị chặn

    Cách sử dụng DNS Cloudflare 1.1.1.1 để truy cập các trang web bị chặn

  • Những thủ thuật máy tính đơn giản và hữu ích

    Những thủ thuật máy tính đơn giản và hữu ích

  • Hướng dẫn cách tạo USB cài đặt Windows 10

    Hướng dẫn cách tạo USB cài đặt Windows 10

  • Tạo USB cài đặt Win 10 bằng Media Creation Tool

    Tạo USB cài đặt Win 10 bằng Media Creation Tool

Theo dõi mạng xã hội

Liên hệ với tôi

Nếu các bạn gặp khó khăn gì trong quá trình làm việc hãy liên hệ với tôi theo email:

tranthanhchinh.hd@gmail.com

Những gì tôi biết tôi sẽ hướng dẫn tận tình. Cảm ơn các bạn đã ủng hộ

Blog bạn bè

Blog công nghệ
Tin học AZ
Mẹo vặt đời sống

Đôi lời về tác giả

Blog chia sẻ thủ thuật máy tính - Thủ thuật windows

Mình tên là Thanh Chính đây là nơi mình viết lại những kinh nghiệm làm việc, những thủ thuật máy tính khi máy tính phát sinh một sự cố, cũng như là một nơi lưu trữ lại các kiến thức làm việc của mình để khi cần có thể lấy ra và áp dụng được luôn, Mong các bạn có thể đóng góp thêm cho blog của mình.

Copyright © 2023 · Going Green Pro Theme on Genesis Framework · WordPress · Log in