Chuyển Số Thành Chữ Có đơn Vị VND Hoặc USD Trong Excel

Chuyển số thành chữ có đơn vị VND hoặc USD trong excel

Vấn đề chuyển số thành chữ rất hay gặp trong văn phòng như xuất hóa đơn (thành tiền bằng số và thành tiền bằng chữ). Bạn có thể lập công thức để tính thành tiền nhưng chỉ hiển thị dưới dạng số.

Bạn đang có nhu cầu chuyển dãy số đó thành số tiền tương ứng nhưng chưa biết phải làm như thế nào?. Bạn không thể lập công thức cho vấn đề trên bằng những hàm có sẵn trong excel.

Hãy yên tâm nhé, TTV sẽ hướng dẫn bạn xử lý vấn đề này và sau đây là đoạn code đã viết.

Thực hiện các bước sau:

Bước 1: Mở file excel bạn đang cần chuyển số thành chữ.

Bước 2: Sau đó bấm phím: Ctrl + F11 / Xuất hiện hộp thoại: Chọn Insert / chọn Module

Bước 3: xuất hiện 1 Module1. Copy đoạn code dưới đây vào phần giao diện trong Module1

(Đây là code chuyển thành Tiếng Việt (vnd))

Public Function VND(BaoNhieu) Dim Ketqua, SoTien, Nhom, chu, dich, S1, S2, S3 As String Dim I, J, Vitri As Byte, S As Double Dim Hang, Doc, Dem If BaoNhieu = 0 Then Ketqua = “khoâng ñoàng” Else If Abs(BaoNhieu) > 999999999999.99 Then Ketqua = “Soá quaù lôùn” Else If BaoNhieu < 0 Then Ketqua = “Tröø” & Space(1) Else Ketqua = Space(0) End If SoTien = Format(Abs(BaoNhieu), “##############0.00”) SoTien = Right(Space(15) & SoTien, 18) Hang = Array(“None”, “traêm”, “möôi”, “gì ñoù”) Doc = Array(“None”, “ngaøn tyû”, “tyû”, “trieäu”, “ngaøn”, “ñoàng”, “xu”) Dem = Array(“None”, “moät”, “hai”, “ba”, “boán”, “naêm”, _ “saùu”, “baûy”, “taùm”, “chín”) For I = 1 To 6 Nhom = Mid(SoTien, I * 3 – 2, 3) If Nhom <> Space(3) Then Select Case Nhom Case “000” If I = 5 Then chu = “ñoàng” & Space(1) Else chu = Space(0) End If Case “.00”, “,00” chu = “chaün” Case Else S1 = Left(Nhom, 1) S2 = Mid(Nhom, 2, 1) S3 = Right(Nhom, 1) chu = Space(0) Hang(3) = Doc(I) For J = 1 To 3 dich = Space(0) S = Val(Mid(Nhom, J, 1)) If S > 0 Then dich = Dem(S) & Space(1) & Hang(J) & Space(1) Else If J = 1 And I > 1 And I < 6 And _ Val(Mid(SoTien, (I – 1) * 3 – 2, 3)) > 0 Then dich = “khoâng” & Space(1) & Hang(J) & Space(1) End If End If Select Case J Case 2 And S = 1 dich = “möôøi” & Space(1) Case 3 And S = 0 And Nhom <> Space(2) & “0” dich = Hang(J) & Space(1) Case 3 And S = 5 And Val(S2) > 0 dich = “l” & Mid(dich, 2) Case 2 And S = 0 And S3 <> “0” If I > 1 And Val(Mid(SoTien, (I – 1) * 3 – 2, 3)) > 0 Or (Val(S1) > 0) Then dich = “leû” & Space(1) End If End Select chu = chu & dich Next J End Select Vitri = InStr(1, chu, “möôi moät”) If Vitri > 0 Then Mid(chu, Vitri, 9) = “möôi moát” Ketqua = Ketqua & chu End If Next I End If End If VND = UCase(Left(Ketqua, 1)) & Trim(Mid(Ketqua, 2)) End Function

Bước 4: Làm tương tự bước 2 và bước 3 copy đoạn code chuyển thành tiếng anh (USD) vào Module2

Public Function USD(BaoNhieu) Dim Ketqua, SoTien, Nhom, chu, dich, S1, S2, S3 As String Dim I, J, Vitri As Byte, S As Double Dim Hang, Doc, Dem If BaoNhieu = 0 Then Ketqua = “khoâng usd” Else If Abs(BaoNhieu) > 999999999999.99 Then Ketqua = “Soá quaù lôùn” Else If BaoNhieu < 0 Then Ketqua = “Tröø” & Space(1) Else Ketqua = Space(0) End If SoTien = Format(Abs(BaoNhieu), “###########0.00”) SoTien = Right(Space(12) & SoTien, 15) Hang = Array(“None”, “traêm”, “möôi”, “gì ñoù”) Doc = Array(“None”, “tyû”, “trieäu”, “ngaøn”, “usd”, “cen”) Dem = Array(“None”, “moät”, “hai”, “ba”, “boán”, “naêm”, _ “saùu”, “baûy”, “taùm”, “chín”) For I = 1 To 5 Nhom = Mid(SoTien, I * 3 – 2, 3) If Nhom <> Space(3) Then Select Case Nhom Case “000” If I = 4 Then chu = “usd” & Space(1) Else chu = Space(0) End If Case “,00” chu = “chaün” Case Else S1 = Left(Nhom, 1) S2 = Mid(Nhom, 2, 1) S3 = Right(Nhom, 1) chu = Space(0) Hang(3) = Doc(I) For J = 1 To 3 dich = Space(0) S = Val(Mid(Nhom, J, 1)) If S > 0 Then dich = Dem(S) & Space(1) & Hang(J) & Space(1) End If Select Case J Case 2 And S = 1 dich = “möôøi” & Space(1) Case 3 And S = 0 And Nhom <> Space(2) & “0” dich = Hang(J) & Space(1) Case 3 And S = 5 And S2 <> Space(1) And S2 <> “0” dich = “l” & Mid(dich, 2) Case 2 And S = 0 And S3 <> “0” If (S1 >= “1” And S1 <= “9”) Or (S1 = “0” And I = 4) Then dich = “leû” & Space(1) End If End Select chu = chu & dich Next J End Select Vitri = InStr(1, chu, “möôi moät”, 1) If Vitri > 0 Then Mid(chu, Vitri, 9) = “möôi moát” Ketqua = Ketqua & chu End If Next I End If End If USD = UCase(Left(Ketqua, 1)) & Mid(Ketqua, 2) End Function

Public Function VNS(BaoNhieu) Dim Ketqua, SoTien, Nhom, chu, dich, S1, S2, S3 As String Dim I, J, Vitri As Byte, S As Double Dim Hang, Doc, Dem If BaoNhieu = 0 Then Ketqua = “khoâng ñoâla Myõ” Else If Abs(BaoNhieu) > 999999999999.99 Then Ketqua = “Soá quaù lôùn” Else If BaoNhieu < 0 Then Ketqua = “Tröø” & Space(1) Else Ketqua = Space(0) End If SoTien = Format(Abs(BaoNhieu), “###########0.00”) SoTien = Right(Space(12) & SoTien, 15) Hang = Array(“None”, “traêm”, “möôi”, “gì ñoù”) Doc = Array(“None”, “tyû”, “trieäu”, “ngaøn”, “ñoâla Myõ”, “cent”) Dem = Array(“None”, “moät”, “hai”, “ba”, “boán”, “naêm”, _ “saùu”, “baûy”, “taùm”, “chín”) For I = 1 To 5 Nhom = Mid(SoTien, I * 3 – 2, 3) If Nhom <> Space(3) Then Select Case Nhom Case “000” If I = 4 Then chu = “ñoàng” & Space(1) Else chu = Space(0) End If Case “,00” chu = “chaün” Case Else S1 = Left(Nhom, 1) S2 = Mid(Nhom, 2, 1) S3 = Right(Nhom, 1) chu = Space(0) Hang(3) = Doc(I) For J = 1 To 3 dich = Space(0) S = Val(Mid(Nhom, J, 1)) If S > 0 Then dich = Dem(S) & Space(1) & Hang(J) & Space(1) End If Select Case J Case 2 And S = 1 dich = “möôøi” & Space(1) Case 3 And S = 0 And Nhom <> Space(2) & “0” dich = Hang(J) & Space(1) Case 3 And S = 5 And S2 <> Space(1) And S2 <> “0” dich = “l” & Mid(dich, 2) Case 2 And S = 0 And S3 <> “0” If (S1 >= “1” And S1 <= “9”) Or (S1 = “0” And I = 4) Then dich = “leû” & Space(1) End If End Select chu = chu & dich Next J End Select Vitri = InStr(1, chu, “möôi moät”, 1) If Vitri > 0 Then Mid(chu, Vitri, 9) = “möôi moát” Ketqua = Ketqua & chu End If Next I End If End If VNS = UCase(Left(Ketqua, 1)) & Mid(Ketqua, 2) End Function

Bước 5: Đóng hộp thoại. Chuyển qua cửa sổ file excel. Bạn có thể sử dụng nhé.

Lưu ý: các ô này cần định dạng Font là nhóm VNI vì code thuộc loại bảng mã VNI Windows. (ví dụ: font VNI-Centur,…..)

= VND(chọn ô số) hoặc = USD(chọn ô số)

Lưu ý: File phải lưu dưới dạng Excel Macro nếu chưa đúng sẽ xuất hiện hộp thoại sau, bạn phải chọn “No” để lưu file mới nhé.

Chúc các bạn thành công!!!

Tham khảo thêm các khóa học tại TTV: https://tinhocvanphong.edu.vn/khoa-hoc-vba-macro/

Các khóa học khác: https://tinhocvanphong.edu.vn/lich-khai-giang/

CHI TIẾT LIÊN HỆ:

Hồ Chí Minh:

CS1: 84T/8 đường Trần Đình Xu, Phường Cô Giang – Quận 1 – Hồ Chí Minh

CS2: 213 đường 3/2, Phường 9 – Quận 10 – Hồ Chí Minh

CS3: 451 Điện Biên Phủ, Phường 25 – Quận Bình Thạnh – Hồ Chí Minh

Hotline: 0902.936.936 – 0977 781 414

Rate this post

Từ khóa » đổi Usd Sang Vnd Trong Excel