CODE đọc số tiền trong VBA

Liên hệ QC

Thanhhoai00

Thành viên chính thức
Tham gia
19/7/20
Bài viết
58
Được thích
13
  • Mình có đoạn code như sau dùng để đọc số tiền tại cột A và hiện chữ đọc được ở cột B2
  • Mình muốn chỉ định cho đoạn code tự động chạy và trả giá trị đọc được tại cột B2 trở đi không cần ra ngoài gọi hàm thì mình thêm code thế nào ạ !!! các bạn giúp mình xíu nhé, cảm ơn các bạn !!!
  • Mã:
    Function UnicodeChar(UniCharCode As String) As String
    On Error GoTo Loi
    Dim str
    Dim desStr As String
    Dim I
    If Mid(UniCharCode, 1, 1) = ";" Then
    UniCharCode = Mid(UniCharCode, 2)
    End If
    If Right(UniCharCode, 1) = ";" Then
    UniCharCode = Mid(UniCharCode, 1, Len(UniCharCode) - 1)
    End If
    str = UniCharCode
    str = Split(str, ";")
    For I = LBound(str) To UBound(str)
    desStr = desStr & ChrW$("&H" & str(I))
    Next
    UnicodeChar = desStr
    Loi:
    Exit Function
    End Function
    
    Function vnd(ByVal NumCurrency As Currency) As String
    Static CharVND(9) As String, BangChu As String, I As Integer
    Dim SoLe, SoDoi As Integer, PhanChan, Ten As String
    Dim DonViTien As String, DonViLe As String
    Dim NganTy As Integer, Ty As Integer, Trieu As Integer, Ngan As Integer
    Dim Dong As Integer, Tram As Integer, Muoi As Integer, DonVi As Integer
    NumCurrency = Round(NumCurrency, 0)
    DonViTien = ";111;1ED3;6E;67" ' d?ng
    DonViLe = ";78;75" ' xu
    If NumCurrency = 0 Then
    vnd = UnicodeChar(";4B;68;F4;6E;67;20" & DonViTien)
    Exit Function
    End If
    If NumCurrency > 922337203685477# Then ' S? l?n nh?t c?a lo?i CURRENCY
    vnd = UnicodeChar(";4B;68;F4;6E;67;20;111;1ED5;69;20;111;1B0;1EE3;63;20;73" & _
    ";1ED1;20;6C;1EDB;6E;20;68;1A1;6E;20;39;32;32;2C;33;33;37" & _
    ";2C;32;30;33;2C;36;38;35;2C;34;37;37")
    Exit Function
    End If
    CharVND(1) = ";6D;1ED9;74" ' m?t
    CharVND(2) = ";68;61;69" ' hai
    CharVND(3) = ";62;61" ' ba
    CharVND(4) = ";62;1ED1;6E" ' b?n
    CharVND(5) = ";6E;103;6D" ' nam
    CharVND(6) = ";73;E1;75" ' s?u
    CharVND(7) = ";62;1EA3;79" ' b?y
    CharVND(8) = ";74;E1;6D" ' t?m
    CharVND(9) = ";63;68;ED;6E" ' ch?n
    SoLe = Int((NumCurrency - Int(NumCurrency)) * 100) ' 2 k? s?
    PhanChan = Trim$(str$(Int(NumCurrency)))
    PhanChan = Space(15 - Len(PhanChan)) + PhanChan
    NganTy = Val(Left(PhanChan, 3))
    Ty = Val(Mid$(PhanChan, 4, 3))
    Trieu = Val(Mid$(PhanChan, 7, 3))
    Ngan = Val(Mid$(PhanChan, 10, 3))
    Dong = Val(Mid$(PhanChan, 13, 3))
    If NganTy = 0 And Ty = 0 And Trieu = 0 And Ngan = 0 And Dong = 0 Then
    BangChu = ";6B;68;F4;6E;67;20" + DonViTien + ";20"
    I = 5
    Else
    BangChu = ""
    I = 0
    End If
    '-----------------------------------------------------
    ' B?t d?u d?i
    '-----------------------------------------------------
    While I <= 5 Select Case I Case 0 SoDoi = NganTy Ten = ";6E;67;E0;6E;20;74;1EF7" ' ng?n t? Case 1 SoDoi = Ty Ten = ";74;1EF7" ' t? Case 2 SoDoi = Trieu Ten = ";74;72;69;1EC7;75" ' tri?u Case 3 SoDoi = Ngan Ten = ";6E;67;E0;6E" ' ng?n Case 4 SoDoi = Dong Ten = DonViTien ' d?ng Case 5 SoDoi = SoLe Ten = DonViLe ' xu End Select If SoDoi <> 0 Then
    Tram = Int(SoDoi / 100)
    Muoi = Int((SoDoi - Tram * 100) / 10)
    DonVi = (SoDoi - Tram * 100) - Muoi * 10
    If Right(BangChu, 3) = ";20" Then
    BangChu = Left(BangChu, Len(BangChu) - 3)
    End If
    BangChu = BangChu + IIf(Len(BangChu) = 0, "", ";2C;20") + _
    IIf(Tram <> 0, Trim(CharVND(Tram)) + ";20;74;72;103;6D;20", "")
    If Muoi = 0 And Tram <> 0 And DonVi <> 0 Then
    BangChu = BangChu + ";6C;1EBB;20"
    Else
    If Muoi <> 0 Then
    BangChu = BangChu + IIf(Muoi <> 0 And Muoi <> 1, _
    Trim(CharVND(Muoi)) + ";20;6D;1B0;1A1;69;20", ";6D;1B0;1EDD;69;20")
    End If
    End If
    If Muoi <> 0 And DonVi = 5 Then
    BangChu = BangChu + ";6C;103;6D;20" + Ten + ";20"
    Else
    If Muoi > 1 And DonVi = 1 Then
    BangChu = BangChu + ";6D;1ED1;74;20" + Ten + ";20"
    Else
    BangChu = BangChu + IIf(DonVi <> 0, Trim(CharVND(DonVi)) + ";20" + Ten, Ten) + ";20"
    End If
    End If
    Else
    BangChu = BangChu + IIf(I = 4, DonViTien + "", "")
    End If
    I = I + 1
    Wend
    If SoLe = 0 Then
    BangChu = BangChu + IIf(Right(BangChu, 3) = ";20", "", ";20") + ";63;68;1EB5;6E"
    End If
    BangChu = UnicodeChar(BangChu)
    '??i sang ti?ng Vi?t Unicode
    ' ??i ch? c?i d?u ti?n th?nh ch? hoa
    Mid$(BangChu, 1, 1) = UCase$(Mid$(BangChu, 1, 1))
    vnd = BangChu
    End Function
 

File đính kèm

  • HOI2.xlsm
    18.1 KB · Đọc: 19
  • Untitled.png
    Untitled.png
    11.1 KB · Đọc: 18
  • Mình có đoạn code như sau dùng để đọc số tiền tại cột A và hiện chữ đọc được ở cột B2
  • Mình muốn chỉ định cho đoạn code tự động chạy và trả giá trị đọc được tại cột B2 trở đi không cần ra ngoài gọi hàm thì mình thêm code thế nào ạ !!! các bạn giúp mình xíu nhé, cảm ơn các bạn !!!
Code của bạn bị lỗi nên tôi thay bằng code khác, bạn gõ số rồi Enter (thử tham khảo File).
 

File đính kèm

  • Doc so tu dong.xlsm
    25.3 KB · Đọc: 79
Upvote 0
  • Mình có đoạn code như sau dùng để đọc số tiền tại cột A và hiện chữ đọc được ở cột B2
  • Mình muốn chỉ định cho đoạn code tự động chạy và trả giá trị đọc được tại cột B2 trở đi không cần ra ngoài gọi hàm thì mình thêm code thế nào ạ !!! các bạn giúp mình xíu nhé, cảm ơn các bạn !!!
  • Mã:
    Function UnicodeChar(UniCharCode As String) As String
    On Error GoTo Loi
    Dim str
    Dim desStr As String
    Dim I
    If Mid(UniCharCode, 1, 1) = ";" Then
    UniCharCode = Mid(UniCharCode, 2)
    End If
    If Right(UniCharCode, 1) = ";" Then
    UniCharCode = Mid(UniCharCode, 1, Len(UniCharCode) - 1)
    End If
    str = UniCharCode
    str = Split(str, ";")
    For I = LBound(str) To UBound(str)
    desStr = desStr & ChrW$("&H" & str(I))
    Next
    UnicodeChar = desStr
    Loi:
    Exit Function
    End Function
    
    Function vnd(ByVal NumCurrency As Currency) As String
    Static CharVND(9) As String, BangChu As String, I As Integer
    Dim SoLe, SoDoi As Integer, PhanChan, Ten As String
    Dim DonViTien As String, DonViLe As String
    Dim NganTy As Integer, Ty As Integer, Trieu As Integer, Ngan As Integer
    Dim Dong As Integer, Tram As Integer, Muoi As Integer, DonVi As Integer
    NumCurrency = Round(NumCurrency, 0)
    DonViTien = ";111;1ED3;6E;67" ' d?ng
    DonViLe = ";78;75" ' xu
    If NumCurrency = 0 Then
    vnd = UnicodeChar(";4B;68;F4;6E;67;20" & DonViTien)
    Exit Function
    End If
    If NumCurrency > 922337203685477# Then ' S? l?n nh?t c?a lo?i CURRENCY
    vnd = UnicodeChar(";4B;68;F4;6E;67;20;111;1ED5;69;20;111;1B0;1EE3;63;20;73" & _
    ";1ED1;20;6C;1EDB;6E;20;68;1A1;6E;20;39;32;32;2C;33;33;37" & _
    ";2C;32;30;33;2C;36;38;35;2C;34;37;37")
    Exit Function
    End If
    CharVND(1) = ";6D;1ED9;74" ' m?t
    CharVND(2) = ";68;61;69" ' hai
    CharVND(3) = ";62;61" ' ba
    CharVND(4) = ";62;1ED1;6E" ' b?n
    CharVND(5) = ";6E;103;6D" ' nam
    CharVND(6) = ";73;E1;75" ' s?u
    CharVND(7) = ";62;1EA3;79" ' b?y
    CharVND(8) = ";74;E1;6D" ' t?m
    CharVND(9) = ";63;68;ED;6E" ' ch?n
    SoLe = Int((NumCurrency - Int(NumCurrency)) * 100) ' 2 k? s?
    PhanChan = Trim$(str$(Int(NumCurrency)))
    PhanChan = Space(15 - Len(PhanChan)) + PhanChan
    NganTy = Val(Left(PhanChan, 3))
    Ty = Val(Mid$(PhanChan, 4, 3))
    Trieu = Val(Mid$(PhanChan, 7, 3))
    Ngan = Val(Mid$(PhanChan, 10, 3))
    Dong = Val(Mid$(PhanChan, 13, 3))
    If NganTy = 0 And Ty = 0 And Trieu = 0 And Ngan = 0 And Dong = 0 Then
    BangChu = ";6B;68;F4;6E;67;20" + DonViTien + ";20"
    I = 5
    Else
    BangChu = ""
    I = 0
    End If
    '-----------------------------------------------------
    ' B?t d?u d?i
    '-----------------------------------------------------
    While I <= 5 Select Case I Case 0 SoDoi = NganTy Ten = ";6E;67;E0;6E;20;74;1EF7" ' ng?n t? Case 1 SoDoi = Ty Ten = ";74;1EF7" ' t? Case 2 SoDoi = Trieu Ten = ";74;72;69;1EC7;75" ' tri?u Case 3 SoDoi = Ngan Ten = ";6E;67;E0;6E" ' ng?n Case 4 SoDoi = Dong Ten = DonViTien ' d?ng Case 5 SoDoi = SoLe Ten = DonViLe ' xu End Select If SoDoi <> 0 Then
    Tram = Int(SoDoi / 100)
    Muoi = Int((SoDoi - Tram * 100) / 10)
    DonVi = (SoDoi - Tram * 100) - Muoi * 10
    If Right(BangChu, 3) = ";20" Then
    BangChu = Left(BangChu, Len(BangChu) - 3)
    End If
    BangChu = BangChu + IIf(Len(BangChu) = 0, "", ";2C;20") + _
    IIf(Tram <> 0, Trim(CharVND(Tram)) + ";20;74;72;103;6D;20", "")
    If Muoi = 0 And Tram <> 0 And DonVi <> 0 Then
    BangChu = BangChu + ";6C;1EBB;20"
    Else
    If Muoi <> 0 Then
    BangChu = BangChu + IIf(Muoi <> 0 And Muoi <> 1, _
    Trim(CharVND(Muoi)) + ";20;6D;1B0;1A1;69;20", ";6D;1B0;1EDD;69;20")
    End If
    End If
    If Muoi <> 0 And DonVi = 5 Then
    BangChu = BangChu + ";6C;103;6D;20" + Ten + ";20"
    Else
    If Muoi > 1 And DonVi = 1 Then
    BangChu = BangChu + ";6D;1ED1;74;20" + Ten + ";20"
    Else
    BangChu = BangChu + IIf(DonVi <> 0, Trim(CharVND(DonVi)) + ";20" + Ten, Ten) + ";20"
    End If
    End If
    Else
    BangChu = BangChu + IIf(I = 4, DonViTien + "", "")
    End If
    I = I + 1
    Wend
    If SoLe = 0 Then
    BangChu = BangChu + IIf(Right(BangChu, 3) = ";20", "", ";20") + ";63;68;1EB5;6E"
    End If
    BangChu = UnicodeChar(BangChu)
    '??i sang ti?ng Vi?t Unicode
    ' ??i ch? c?i d?u ti?n th?nh ch? hoa
    Mid$(BangChu, 1, 1) = UCase$(Mid$(BangChu, 1, 1))
    vnd = BangChu
    End Function
Sau khi xem nội dung bạn gửi, tôi có ý kiến đề xuất như sau:
1. Thêm một thủ tục Sub() gọi hàm "đổi tiền"
2. Thêm sự kiện worksheet_change,.... (như bài #2 đã gửi)
xin phép tác giả mượn code của bài số #2
 

File đính kèm

  • Doc so tu dong by Hungnm.xlsm
    27.4 KB · Đọc: 28
Upvote 0
Cảm ơn bạn đã giúip mình ạ !!
cho mình hỏi xíu là !! mình muốn bỏ dấu ngoặc đơn chỗ đọc kết quả thì mình bỏ thế nào ạ !!! ví dụ kết quả mình muốn sẽ trả ra như thế này ạ
200,000 => Hai trăm nghìn đồng chẵn
100,000 => Một Trăm nghìn đồng chẵn
500,000 => Năm trăm nghìn đồng chẳn
1,000,000,000 => Một tỷ đồng chẵn
cảm ơn bạn nhiều ạ !!!

Mã:
Option Explicit
Public Function VNdong(FirstArg As Object)
Dim chu, aaa, bbb, so3
chu = Abs(FirstArg.Value)
chu = Format(chu, "0.00")
If chu > 10 ^ 99 Then
    VNdong = FirstArg.Value
    Exit Function
End If
aaa = Left(chu, Len(chu) - 3)
bbb = Right(chu, 2)

'so3 = dich(CStr(aaa)) & "ñoàng" & IIf(Val(bbb) <> 0, " " & dich(CStr(bbb)) & "xu.", ".") 'góc
so3 = dich(CStr(aaa)) & "ñoàng chaün" & IIf(Val(bbb) <> 0, " " & dich(CStr(bbb)) & "xu.", ")")

so3 = Replace(so3, ", tyû", " tyû")              '* Lam cho dep
so3 = Replace(so3, ", ñoàng chaün", " ñoàng chaün")
so3 = "(" & Chr(Asc(Left(so3, 1)) - 32) + Mid(so3, 2) ' Viet hoa chu dau tien
If FirstArg.Value < 0 Then so3 = "(AÂm) " & so3
VNdong = vni2u(CStr(so3))
End Function

Function dich(yy As String)
Dim mm, docso, kkdai
kkdai = Len(yy)
If Len(yy) < 10 Then
    docso = ""
    For mm = 1 To Len(yy)
        docso = docso & Mid(yy, mm, 1) & Chr(65 + Len(yy) - mm)
    Next
Else
    'docso = dich(Left(yy, kkdai - 9)) & "tyû, " & dich(Right(yy, 9))
     docso = dich(Left(yy, kkdai - 9)) & "t" & ChrW(7927) & ", " & dich(Right(yy, 9))
    dich = docso
    Exit Function
End If

docso = Replace(docso, "A", "donvi")
docso = Replace(docso, "B", "möôi ")
docso = Replace(docso, "C", "traêm ")
docso = Replace(docso, "D", "ngaøn, ")
docso = Replace(docso, "E", "möôi ")
docso = Replace(docso, "F", "traêm ")
docso = Replace(docso, "G", "trieäu, ")
docso = Replace(docso, "H", "möôi ")
docso = Replace(docso, "I", "traêm ")
docso = Replace(docso, "0", "khoâng ")
docso = Replace(docso, "1", "moät ")
docso = Replace(docso, "2", "hai ")
docso = Replace(docso, "3", "ba ")
docso = Replace(docso, "4", "boán ")
docso = Replace(docso, "5", "naêm ")
docso = Replace(docso, "6", "saùu ")
docso = Replace(docso, "7", "baûy ")
docso = Replace(docso, "8", "taùm ")
docso = Replace(docso, "9", "chín ")
docso = Replace(docso, "khoâng möôi", "leû")      '* Buoc hoan chinh
docso = Replace(docso, "möôi khoâng", "möôi")
docso = Replace(docso, "khoâng traêm leû khoâng ", "khoâng ")
docso = Replace(docso, "traêm leû khoâng", "traêm")
docso = Replace(docso, "möôi naêm", "möôi laêm")
docso = Replace(docso, "moät möôi", "möôøi")
docso = Replace(docso, "möôi moät", "möôi moát")
docso = Replace(docso, " khoâng donvi", " donvi")
docso = Replace(docso, "khoâng ngaøn, donvi", "donvi")
docso = Replace(docso, "khoâng trieäu, donvi", "donvi")
docso = Replace(docso, "donvi", "")
dich = docso

End Function


Function vni2u(vanbanVNI As String)
vni2u = vanbanVNI                    '* Luu y khong duoc thay doi thu tu cac dong duoi day
vni2u = Replace(vni2u, "aù", ChrW(225))
vni2u = Replace(vni2u, "aø", ChrW(224))
vni2u = Replace(vni2u, "aû", ChrW(7843))
vni2u = Replace(vni2u, "aõ", ChrW(227))
vni2u = Replace(vni2u, "aï", ChrW(7841))
vni2u = Replace(vni2u, "aé", ChrW(7855))
vni2u = Replace(vni2u, "aè", ChrW(7857))
vni2u = Replace(vni2u, "aú", ChrW(7859))
vni2u = Replace(vni2u, "aü", ChrW(7861))
vni2u = Replace(vni2u, "aë", ChrW(7863))
vni2u = Replace(vni2u, "aá", ChrW(7845))
vni2u = Replace(vni2u, "aà", ChrW(7847))
vni2u = Replace(vni2u, "aå", ChrW(7849))
vni2u = Replace(vni2u, "aã", ChrW(7851))
vni2u = Replace(vni2u, "aä", ChrW(7853))
vni2u = Replace(vni2u, "où", ChrW(243))
vni2u = Replace(vni2u, "oø", ChrW(242))
vni2u = Replace(vni2u, "oû", ChrW(7887))
vni2u = Replace(vni2u, "oõ", ChrW(245))
vni2u = Replace(vni2u, "oï", ChrW(7885))
vni2u = Replace(vni2u, "oá", ChrW(7889))
vni2u = Replace(vni2u, "oà", ChrW(7891))
vni2u = Replace(vni2u, "oå", ChrW(7893))
vni2u = Replace(vni2u, "oã", ChrW(7895))
vni2u = Replace(vni2u, "oä", ChrW(7897))
vni2u = Replace(vni2u, "ôù", ChrW(7899))
vni2u = Replace(vni2u, "ôø", ChrW(7901))
vni2u = Replace(vni2u, "ôû", ChrW(7903))
vni2u = Replace(vni2u, "ôõ", ChrW(7905))
vni2u = Replace(vni2u, "ôï", ChrW(7907))
vni2u = Replace(vni2u, "uù", ChrW(250))
vni2u = Replace(vni2u, "uø", ChrW(249))
vni2u = Replace(vni2u, "uû", ChrW(7911))
vni2u = Replace(vni2u, "uõ", ChrW(361))
vni2u = Replace(vni2u, "uï", ChrW(7909))
vni2u = Replace(vni2u, "öù", ChrW(7913))
vni2u = Replace(vni2u, "öø", ChrW(7915))
vni2u = Replace(vni2u, "öû", ChrW(7917))
vni2u = Replace(vni2u, "öõ", ChrW(7919))
vni2u = Replace(vni2u, "öï", ChrW(7921))
vni2u = Replace(vni2u, "eù", ChrW(233))
vni2u = Replace(vni2u, "eø", ChrW(232))
vni2u = Replace(vni2u, "eû", ChrW(7867))
vni2u = Replace(vni2u, "eõ", ChrW(7869))
vni2u = Replace(vni2u, "eï", ChrW(7865))
vni2u = Replace(vni2u, "eá", ChrW(7871))
vni2u = Replace(vni2u, "eà", ChrW(7873))
vni2u = Replace(vni2u, "eå", ChrW(7875))
vni2u = Replace(vni2u, "eã", ChrW(7877))
vni2u = Replace(vni2u, "eä", ChrW(7879))
vni2u = Replace(vni2u, "yù", ChrW(253))
vni2u = Replace(vni2u, "yø", ChrW(7923))
vni2u = Replace(vni2u, "yœ", ChrW(7927))
vni2u = Replace(vni2u, "yõ", ChrW(7929))
vni2u = Replace(vni2u, "î", ChrW(7925))
vni2u = Replace(vni2u, "AÙ", ChrW(193))
vni2u = Replace(vni2u, "AØ", ChrW(192))
vni2u = Replace(vni2u, "AÛ", ChrW(7842))
vni2u = Replace(vni2u, "AÕ", ChrW(195))
vni2u = Replace(vni2u, "AÏ", ChrW(7840))
vni2u = Replace(vni2u, "AÉ", ChrW(7854))
vni2u = Replace(vni2u, "AÈ", ChrW(7856))
vni2u = Replace(vni2u, "AÚ", ChrW(7858))
vni2u = Replace(vni2u, "AÜ", ChrW(7860))
vni2u = Replace(vni2u, "AË", ChrW(7862))
vni2u = Replace(vni2u, "AÁ", ChrW(7844))
vni2u = Replace(vni2u, "AÀ", ChrW(7846))
vni2u = Replace(vni2u, "AÅ", ChrW(7848))
vni2u = Replace(vni2u, "AÃ", ChrW(7850))
vni2u = Replace(vni2u, "AÄ", ChrW(7852))
vni2u = Replace(vni2u, "EÙ", ChrW(201))
vni2u = Replace(vni2u, "EØ", ChrW(200))
vni2u = Replace(vni2u, "EÛ", ChrW(7866))
vni2u = Replace(vni2u, "EÕ", ChrW(7868))
vni2u = Replace(vni2u, "EÏ", ChrW(7864))
vni2u = Replace(vni2u, "EÁ", ChrW(7870))
vni2u = Replace(vni2u, "EÀ", ChrW(7872))
vni2u = Replace(vni2u, "EÅ", ChrW(7874))
vni2u = Replace(vni2u, "EÃ", ChrW(7876))
vni2u = Replace(vni2u, "EÄ", ChrW(7878))
vni2u = Replace(vni2u, "OÙ", ChrW(211))
vni2u = Replace(vni2u, "OØ", ChrW(210))
vni2u = Replace(vni2u, "OÛ", ChrW(7886))
vni2u = Replace(vni2u, "OÕ", ChrW(213))
vni2u = Replace(vni2u, "OÏ", ChrW(7884))
vni2u = Replace(vni2u, "OÁ", ChrW(7888))
vni2u = Replace(vni2u, "OÀ", ChrW(7890))
vni2u = Replace(vni2u, "OÅ", ChrW(7892))
vni2u = Replace(vni2u, "OÃ", ChrW(7894))
vni2u = Replace(vni2u, "OÄ", ChrW(7896))
vni2u = Replace(vni2u, "ÔÙ", ChrW(7898))
vni2u = Replace(vni2u, "ÔØ", ChrW(7900))
vni2u = Replace(vni2u, "ÔÛ", ChrW(7902))
vni2u = Replace(vni2u, "ÔÕ", ChrW(7904))
vni2u = Replace(vni2u, "ÔÏ", ChrW(7906))
vni2u = Replace(vni2u, "UÙ", ChrW(218))
vni2u = Replace(vni2u, "UØ", ChrW(217))
vni2u = Replace(vni2u, "UÛ", ChrW(7910))
vni2u = Replace(vni2u, "UÕ", ChrW(360))
vni2u = Replace(vni2u, "UÏ", ChrW(7908))
vni2u = Replace(vni2u, "ÖÙ", ChrW(7912))
vni2u = Replace(vni2u, "ÖØ", ChrW(7914))
vni2u = Replace(vni2u, "ÖÛ", ChrW(7916))
vni2u = Replace(vni2u, "ÖÕ", ChrW(7918))
vni2u = Replace(vni2u, "ÖÏ", ChrW(7920))
vni2u = Replace(vni2u, "YÙ", ChrW(221))
vni2u = Replace(vni2u, "YØ", ChrW(7922))
vni2u = Replace(vni2u, "YÛ", ChrW(7926))
vni2u = Replace(vni2u, "YÕ", ChrW(7928))
vni2u = Replace(vni2u, "Î", ChrW(7924))
vni2u = Replace(vni2u, "ñ", ChrW(273))
vni2u = Replace(vni2u, "Ñ", ChrW(208))
vni2u = Replace(vni2u, "aê", ChrW(259))
vni2u = Replace(vni2u, "AÊ", ChrW(258))
vni2u = Replace(vni2u, "aâ", ChrW(226))
vni2u = Replace(vni2u, "AÂ", ChrW(194))
vni2u = Replace(vni2u, "eâ", ChrW(234))
vni2u = Replace(vni2u, "EÂ", ChrW(202))
vni2u = Replace(vni2u, "ô", ChrW(417))
vni2u = Replace(vni2u, "Ô", ChrW(416))
vni2u = Replace(vni2u, "oâ", ChrW(244))
vni2u = Replace(vni2u, "OÂ", ChrW(212))
vni2u = Replace(vni2u, "ö", ChrW(432))
vni2u = Replace(vni2u, "Ö", ChrW(431))
vni2u = Replace(vni2u, "Í", ChrW(205))
vni2u = Replace(vni2u, "Ì", ChrW(204))
vni2u = Replace(vni2u, "Æ", ChrW(7880))
vni2u = Replace(vni2u, "Ó", ChrW(296))
vni2u = Replace(vni2u, "Ò", ChrW(7882))
vni2u = Replace(vni2u, "í", ChrW(237))
vni2u = Replace(vni2u, "ì", ChrW(236))
vni2u = Replace(vni2u, "æ", ChrW(7881))
vni2u = Replace(vni2u, "ó", ChrW(297))
vni2u = Replace(vni2u, "ò", ChrW(7883))

End Function
Code của bạn bị lỗi nên tôi thay bằng code khác, bạn gõ số rồi Enter (thử tham khảo File).
 

File đính kèm

  • Untitled.png
    Untitled.png
    16 KB · Đọc: 11
Upvote 0
Cảm ơn bạn đã giúip mình ạ !!
cho mình hỏi xíu là !! mình muốn bỏ dấu ngoặc đơn chỗ đọc kết quả thì mình bỏ thế nào ạ !!! ví dụ kết quả mình muốn sẽ trả ra như thế này ạ
200,000 => Hai trăm nghìn đồng chẵn
100,000 => Một Trăm nghìn đồng chẵn
500,000 => Năm trăm nghìn đồng chẳn
1,000,000,000 => Một tỷ đồng chẵn
cảm ơn bạn nhiều ạ !!!
Bạn xem lại File.
Chỗ Một tỷ đồng chẵn thì bạn Paste > Value rồi sửa tay vậy.
 

File đính kèm

  • Doc so cot B.xlsm
    25.6 KB · Đọc: 46
Lần chỉnh sửa cuối:
Upvote 0
Thớt có thể tham khảo thêm ở đây
 
Upvote 0
mình tạo một form, một nút xóa dữ liệu cũ ( xóa dữ liệu nhưng vẫn giữ nguyên định dạng tiền tệ ở cột A) thì bị lỗi thế này ạ !!! bạn giúp mình xíu nhé
Mã:
Private Sub CommandButton1_Click()
Worksheets("Sheet1").Activate
With Sheets("Sheet1")
Range("A2:A50,B2:B50,C2:c50,D2:D50,E2:E50,F2:F50,G2:G50,H2:H50,I2:I50,J2:J50,K2:K50,L2:L50,M2:M50,N2:N50,O2:O50,P2:P50,Q2:Q50,R2:R50,S2:S50,T2:T50,U2:U50").ClearContents
MsgBox ("XOA XONG ROI NHE !!! ")
End With
End Sub
Bạn xem lại File.
Chỗ Một tỷ đồng chẵn thì bạn Paste > Value rồi sửa tay vậy.
 

File đính kèm

  • Untitled.png
    Untitled.png
    411.7 KB · Đọc: 5
  • Doc so cot B (1).xlsm
    35.9 KB · Đọc: 16
Upvote 0
mình tạo một form, một nút xóa dữ liệu cũ ( xóa dữ liệu nhưng vẫn giữ nguyên định dạng tiền tệ ở cột A) thì bị lỗi thế này ạ !!! bạn giúp mình xíu nhé
Mã:
Private Sub CommandButton1_Click()
Worksheets("Sheet1").Activate
With Sheets("Sheet1")
Range("A2:A50,B2:B50,C2:c50,D2:D50,E2:E50,F2:F50,G2:G50,H2:H50,I2:I50,J2:J50,K2:K50,L2:L50,M2:M50,N2:N50,O2:O50,P2:P50,Q2:Q50,R2:R50,S2:S50,T2:T50,U2:U50").ClearContents
MsgBox ("XOA XONG ROI NHE !!! ")
End With
End Sub
1/ Code trong UserForm thì thay cái này vào:
Mã:
Private Sub CommandButton1_Click()
    Sheet1.Range("A1").CurrentRegion.Offset(1).ClearContents
    MsgBox ("XOA XONG ROI NHE !!! ")
End Sub

2/ Tại B2 sử dụng hàm sau rồi Fill xuống, còn hàm chỗ khác bạn tự sửa lấy.

B2 =IF($A2="","",VNdong($A2))
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom