Công thức chuyển số sang chữ trong Excel

Thảo luận trong 'Ứng dụng Excel' bắt đầu bởi DuongLanVi, 16 Tháng chín 2008.

552,781 lượt xem

  1. DuongLanVi

    DuongLanVi WKT Senior Staff

    Bài viết:
    262
    Đã được thích:
    53
    Nơi ở:
    Ho Chi Minh City, Vietnam, Vietnam
    Công thức chuyển số sang chữ trong Excel 2007 - 2010

    Mượn bài của một bạn hỏi về vấn đề này, hôm nay mình viết 1 topic để mọi người tiện theo dõi.

    Đây là công cụ bổ sung (Add-in) cho Excel rất tiện lợi đặc biệt đối với người dùng Excel trong công việc kế toán-tài chính. Công cụ vnTools khi chạy sẽ cài tập tin Ufunctions.xla vào thư mục mặc định Program Files\vnTools (có thể chỉ định thư mục khác).

    Cách thêm cung cụ này vào Excel
    + Bấm vào nút to, tròn ở góc đỉnh bên trái màn hình (đối với Word 2007 ) hay Flie (đối với Word 2010)
    + Chọn "Options"
    + Chọn "Add-Ins" chọn "Excel Add-Ins" cuối cùng chọn "Go"



    [​IMG]

    + Tại màn hình "Add-Ins" bấm chọn "Browse"
    [​IMG]

    và chọn file Ufunctions.xla trong C:\Program Files\vnTools

    vnTools xuất hiện ở dạng thanh công cụ, có hộp thoại thao tác tương tự như các hàm của Excel - trong đó bạn có thể chọn ô chứa số cần chuyển đổi, ô chứa chuỗi kết quả...
    [​IMG]

    vnTools hỗ trợ chuyển đổi tiền VND (đồng) và USD (đô la), có khả năng xử lý tới 15 chữ số; hỗ trợ bảng mã tiếng Việt Unicode, VNI và TCVN3.

    Download phần mềm tại đây

    Nếu mọi người ủng hộ mình sẽ viết thêm một bài cho Excel 2003 :D


     

    Các file đính kèm:

    Last edited: 23 Tháng mười một 2013
    #1
    Sửa Phần Cứng thích bài này.
  2. nguyentrangkt

    nguyentrangkt Thành viên hoạt động

    Bài viết:
    42
    Đã được thích:
    4
    Giới tính:
    Nữ
    Nơi ở:
    thai nguyen
    #2
    Pham Dinh An thích bài này.
  3. lnthao

    lnthao Thành viên sơ cấp

    Bài viết:
    2
    Đã được thích:
    0
    Nơi ở:
    Bien Hoa
    Hiên nay đơn vị em đang có tài khoản ở Techcombank và thường viết Uỷ nhiệm chi từ Excel. Anh/chị nào có hàm chuyển đổi từ dạng số sang chữ thì cho em xin với nhé.
    Em cám ơn nhiều.
    Thao minh nghi thi ban nen dung *dích so" vua don gian vua de su dung chi cai dat trong vong 1 phút
    neu can cho dc mail minh se gui duong dan cho ban
     
    #3
  4. vuchinh1973

    vuchinh1973 Thành viên sơ cấp

    Bài viết:
    1
    Đã được thích:
    0
    Nơi ở:
    tp ho chi minh
    Xin chào cả nhà
    mình không phải dân kế toán nhưng mình cũng đôi khi làm về excel nên mong các bạn giúp đỡ
    thank
     
    #4
  5. trantri1311

    trantri1311 Thành viên thân thiết

    Bài viết:
    113
    Đã được thích:
    0
    Nơi ở:
    Hồ Chí Minh
    File của nguyentrangkt quá ok rồi, chỉ tội là số tiền nhỏ hơn 10 tỷ thôi, USD thì khó, nhưng VND 10 tỷ chẳng nhằm nhò gì
     
    #5
  6. minh toan

    minh toan Thành viên thân thiết

    Bài viết:
    335
    Đã được thích:
    1
    Nơi ở:
    000
    Các bác ơi giúp em với em cũng muốn cài chương trình này mà khi đánh số trong EXCEL sẽ hiện lên chữ .
    Chân thành cảm ơn!
     
    #6
  7. giangngocduc

    giangngocduc Thành viên sơ cấp

    Bài viết:
    3
    Đã được thích:
    0
    Nơi ở:
    Kien Giang
    Mình có file này cũng dịch số ra chữ nhưng đơn giản và dễ xài hơn nhiều cách thực hiện
    Giải nén bạn sẽ có file xls 39 KB chép nó vào C:\Program Files\Microsoft Office\OFFICE11\XLSTART
    Cách dùng :
    Mở Excel công thức thực hiện :
    Font Vni : =dichsovni(địa chỉ ô chứa số) -> Enter
    Font ABC : =dichsovn3(địa chỉ ô chứa số) -> Enter
    Font Uni : =dichsoun(địa chỉ ô chứa số) -> Enter
     

    Các file đính kèm:

    #7
  8. jobe

    jobe Thành viên thân thiết

    Bài viết:
    108
    Đã được thích:
    0
    Nơi ở:
    Hà Nội
    Mình đã cài file vnduni() của một bạn trên diễn đàn post lên và chạy ngon lành rồi nhưng file này chỉ đọc số sang chữ được với tiền đồng việt nam, mình muốn đọc số sang chữ các đơn vị tiền tệ khác thì phải làm thế nào nhỉ. VD: USD, GBP, SGD, JPY,... Bạn nào biết chỉ mình với
     
    #8
  9. vothihongxanh

    vothihongxanh Thành viên sơ cấp

    Bài viết:
    2
    Đã được thích:
    1
    Giới tính:
    Nữ
    Nơi ở:
    Bến Tre
    các anh/chị ơi! e đã cài phần mền đọc số thành chữ Tool/Add-in, tất cả e đều làm như hướng dẫn, vậy công thức để đọc được là gì, các a/ch chỉ giúp e với. em rất cần, Cám ơn các a/ch nhiều

    em làm rồi, nhưng không đọc đc thành chữ, báo " name", nhưng e ko biết sai chổ nào nữa.
     
    Last edited: 24 Tháng ba 2011
    #9
  10. autokiss

    autokiss Thành viên sơ cấp

    Bài viết:
    4
    Đã được thích:
    1
    Nơi ở:
    QN
    Chắc bạn dùng tiện ích tcvn đúng không? Nếu thế công thức bạn cần đánh từ ô B2 để đọc số ô B1 là =doc_sovnd(B1;2)

    Nếu bài đã cài tiện ích rồi mà gõ như vậy bị lỗi thì bạn đối dấu ";" thành dấu "," hoặc nếu chữ không đọc được thì bạn đổi số 2 thành số 1 (Đổi VnTime thành Times New Roman)
     
    #10
  11. lamthediep584

    lamthediep584 Thành viên hoạt động

    Bài viết:
    6
    Đã được thích:
    0
    Nơi ở:
    TN
    Bạn ơi cho mình hỏi chút, mình cài chương trình đổi số của bạn, nhưng khi đặt công thức thì Tiếng Việt bị lỗi font chữ, làm thế nào để ko bị lỗi nhỉ bạn chỉ giúp mình với. Tks nhiều!

    Bạn ơi cho mình hỏi chút, mình cài chương trình đổi số của bạn, nhưng khi đặt công thức thì Tiếng Việt bị lỗi font chữ, làm thế nào để ko bị lỗi nhỉ bạn chỉ giúp mình với. Tks nhiều!
     
    Last edited: 25 Tháng tư 2011
    #11
  12. sosad

    sosad Thành viên sơ cấp

    Bài viết:
    1
    Đã được thích:
    0
    Nơi ở:
    TpHCM
    mình đã làm theo cách của bạn đã ok, nhưng ghi đổi ra chữ nó có ngăn cách dấu phẩy như sau : Hai trăm ba mươi ba triệu, bốn trăm ngàn, đồng chẵn
    Làm cách nào có thể bỏ dấu (,) này không, giúp mình nhé
     
    #12
  13. buithecuong

    buithecuong Thành viên sơ cấp

    Bài viết:
    1
    Đã được thích:
    0
    Nơi ở:
    Hà nội
    vntools dung hay đấy, mình cũng vừa tải về, vừa chuyển đổi phông chữ, vừa chuyển số thành chữ,
     
    #13
  14. thothoo

    thothoo Thành viên sơ cấp

    Bài viết:
    1
    Đã được thích:
    0
    Nơi ở:
    ca mau
    Ðề: Công thức chuyển số sang chữ trong Excel

    Cái của bạn giangngocduc rất hay đó. Nhưng có cách nào sữa chữ CHẲN thành CHẴN được không? Hoặc bỏ luôn chữ chẵn. Thanks bạn nhiều
     
    #14
  15. hienmoney

    hienmoney Thành viên sơ cấp

    Bài viết:
    1
    Đã được thích:
    0
    Nơi ở:
    daklak
    Ðề: Công thức chuyển số sang chữ trong Excel

    Trước tiên mình cảm ơn bạn trước nha, mình tìm công thức này lâu rồi mà ko biết tìm đâu hôm nay tình cờ vào tham gia diễn đàn webketoan mới hay bạn có bí kíp, vậy bạn gửi qua nick này giùm mình nha: goodnguyen566@yahoo.com
     
    #15
  16. standapro

    standapro Thành viên sơ cấp

    Bài viết:
    1
    Đã được thích:
    0
    Nơi ở:
    dinh trang hoa di linh
    Ðề: Công thức chuyển số sang chữ trong Excel

    Cái này hay. nhưng ví dụ như : Ba mươi sáu triệu, không trăm hai mươi lăm ngàn, đồng chẵn
    bác bỏ giùm mình dấu 1 dấu phẩy ở chữ "ngàn," được không.
    thak bác nhiều !
     
    #16
  17. Congai2002

    Congai2002 Thành viên sơ cấp

    Bài viết:
    1
    Đã được thích:
    0
    Nơi ở:
    Hà Nội
    Ðề: Công thức chuyển số sang chữ trong Excel

    Mình cũng có nhu cầu giống bạn này.
    Mọi người ơi vào giúp chúng mình giải quyết việc này được không?
    Chúc cả nhà cuối tuần vui vẻ nhé.
     
    #17
  18. hoadongxu

    hoadongxu Thành viên hoạt động

    Bài viết:
    6
    Đã được thích:
    0
    Nơi ở:
    Hà Nội
    Ðề: Công thức chuyển số sang chữ trong Excel

    Hình đợt trước t có nhớ là cài thêm tiện ích gì thì phải
     
    #18
  19. cold

    cold Thành viên thân thiết

    Bài viết:
    243
    Đã được thích:
    42
    Nơi ở:
    A2,Hoang Hoa Tham,Q.TB
    Ðề: Công thức chuyển số sang chữ trong Excel

    To Congai2002
    Bạn thử dùng theo cách sau xem sao:

    Cách đổi số ra chữ trong Excel
    Để tạo 1 đoạn mã Macro chuyển đổi số ra chữ trong 1 file Excel bạn làm các bước sau:
    1. Mở và Save tên tập tin Excel mới
    2. Đoạn mã Macro luôn chạy ở mức "Security trung bình or thấp": chọn Tools-->Macro-->Security-->chọn Medium hoặc Low
    3. Vào chương trình Visual Basic: chọn Tools-->Macro-->Security-->Visual Basic Editor--> Hiện cửa sổ Microsoft Visual Basic
    4. Trong cửa sổ Microsoft Visual Basic: chọn Insert --> Module--> xuất hiện khoảng trắng bên phải --> bạn "Copy" đoạn mã Macro màu xanh dưới đây vào khoảng trắng này

    Function DocSoVni(conso) As String
    s09 = Array("", " moät", " hai", " ba", " boán", " naêm", " saùu", " baûy", " taùm", " chín")
    lop3 = Array("", " trieäu", " nghìn", " tyû")
    If Trim(conso) = "" Then
    DocSoVni = ""
    ElseIf IsNumeric(conso) = True Then
    If conso < 0 Then dau = "aâm " Else dau = ""
    conso = Application.WorksheetFunction.Round(Abs(conso), 0)
    conso = " " & conso
    conso = Replace(conso, ",", "", 1)
    vt = InStr(1, conso, "E")
    If vt > 0 Then
    sonhan = Val(Mid(conso, vt + 1))
    conso = Trim(Mid(conso, 2, vt - 2))
    conso = conso & String(sonhan - Len(conso) + 1, "0")
    End If
    conso = Trim(conso)
    sochuso = Len(conso) Mod 9
    If sochuso > 0 Then conso = String(9 - (sochuso Mod 12), "0") & conso
    docso = ""
    i = 1
    lop = 1
    Do
    n1 = Mid(conso, i, 1)
    n2 = Mid(conso, i + 1, 1)
    n3 = Mid(conso, i + 2, 1)
    baso = Mid(conso, i, 3)
    i = i + 3
    If n1 & n2 & n3 = "000" Then
    If docso <> "" And lop = 3 And Len(conso) - i > 2 Then s123 = " tyû" Else s123 = ""
    Else
    If n1 = 0 Then
    If docso = "" Then s1 = "" Else s1 = " khoâng traêm"
    Else
    s1 = s09(n1) & " traêm"
    End If
    If n2 = 0 Then
    If s1 = "" Or n3 = 0 Then
    s2 = ""
    Else
    s2 = " linh"
    End If
    Else
    If n2 = 1 Then s2 = " möôøi" Else s2 = s09(n2) & " möôi"
    End If
    If n3 = 1 Then
    If n2 = 1 Or n2 = 0 Then s3 = " moät" Else s3 = " moát"
    ElseIf n3 = 5 And n2 <> 0 Then
    s3 = " laêm"
    Else
    s3 = s09(n3)
    End If
    If i > Len(conso) Then
    s123 = s1 & s2 & s3
    Else
    s123 = s1 & s2 & s3 & lop3(lop)
    End If
    End If
    lop = lop + 1
    If lop > 3 Then lop = 1
    docso = docso & s123
    If i > Len(conso) Then Exit Do
    Loop
    If docso = "" Then DocSoVni = "khoâng" Else DocSoVni = dau & Trim(docso)
    Else
    DocSoVni = conso
    End If
    End Function
    Function DocSoUni(conso) As String
    s09 = Array("", " m" & ChrW(7897) & "t", " hai", " ba", " b" & ChrW(7889) & "n", " n" & ChrW(259) & "m", " s" & ChrW(225) & "u", " b" & ChrW(7843) & "y", " t" & ChrW(225) & "m", " ch" & ChrW(237) & "n")
    lop3 = Array("", " tri" & ChrW(7879) & "u", " ngh" & ChrW(236) & "n", " t" & ChrW(7927))
    'Stop
    If Trim(conso) = "" Then
    DocSoUni = ""
    ElseIf IsNumeric(conso) = True Then
    If conso < 0 Then dau = ChrW(226) & "m " Else dau = ""
    conso = Application.WorksheetFunction.Round(Abs(conso), 0)
    conso = " " & conso
    conso = Replace(conso, ",", "", 1)
    vt = InStr(1, conso, "E")
    If vt > 0 Then
    sonhan = Val(Mid(conso, vt + 1))
    conso = Trim(Mid(conso, 2, vt - 2))
    conso = conso & String(sonhan - Len(conso) + 1, "0")
    End If
    conso = Trim(conso)
    sochuso = Len(conso) Mod 9
    If sochuso > 0 Then conso = String(9 - (sochuso Mod 12), "0") & conso
    docso = ""
    i = 1
    lop = 1
    Do
    n1 = Mid(conso, i, 1)
    n2 = Mid(conso, i + 1, 1)
    n3 = Mid(conso, i + 2, 1)
    baso = Mid(conso, i, 3)
    i = i + 3
    If n1 & n2 & n3 = "000" Then
    If docso <> "" And lop = 3 And Len(conso) - i > 2 Then s123 = " t" & ChrW(7927) Else s123 = ""
    Else
    If n1 = 0 Then
    If docso = "" Then s1 = "" Else s1 = " kh" & ChrW(244) & "ng tr" & ChrW(259) & "m"
    Else
    s1 = s09(n1) & " tr" & ChrW(259) & "m"
    End If
    If n2 = 0 Then
    If s1 = "" Or n3 = 0 Then
    s2 = ""
    Else
    s2 = " linh"
    End If
    Else
    If n2 = 1 Then s2 = " m" & ChrW(432) & ChrW(7901) & "i" Else s2 = s09(n2) & " m" & ChrW(432) & ChrW(417) & "i"
    End If
    If n3 = 1 Then
    If n2 = 1 Or n2 = 0 Then s3 = " m" & ChrW(7897) & "t" Else s3 = " m" & ChrW(7889) & "t"
    ElseIf n3 = 5 And n2 <> 0 Then
    s3 = " l" & ChrW(259) & "m"
    Else
    s3 = s09(n3)
    End If
    If i > Len(conso) Then
    s123 = s1 & s2 & s3
    Else
    s123 = s1 & s2 & s3 & lop3(lop)
    End If
    End If
    lop = lop + 1
    If lop > 3 Then lop = 1
    docso = docso & s123
    If i > Len(conso) Then Exit Do
    Loop
    If docso = "" Then DocSoUni = "kh" & ChrW(244) & "ng" Else DocSoUni = dau & Trim(docso)
    Else
    DocSoUni = conso
    End If
    End Function

    5. Save và turn off cửa sổ Microsoft Visual Basic
    6. Tại cửa sổ Microsoft Excel ta sẽ test như sau:
    - Địa chỉ A1 gõ: 123.456.789
    - Địa chỉ A2 gõ: =DocSoUni(A1) hoặc =DocSoVni(A1)
    *Do đơn vị tiền tệ có thể là VNĐ, YEN, USD, EURO...nên kết hợp thêm lệnh xử lý text...bạn gõ lại như sau:
    =DocSoUni(A1)&" VNĐ" hoặc =DocSoVni(A1)&" USD" (nhớ thêm khoảng cách trong dấu "")

    **Chú thích:
    - Trong đoạn mã Macro có 2 dòng màu xanh dương in đậm là DocSoVni và DocSoUni... đây là câu lệnh để đọc số theo dạng font Unicode hoặc Vni-Times...ai dùng font nào thì dùng câu lệnh đó
     
    #19
    Quangnghialxag thích bài này.
  20. mrhung

    mrhung Nguyễn Trọng Hùng

    Bài viết:
    340
    Đã được thích:
    19
    Nơi ở:
    Hà Giang
    Ðề: Công thức chuyển số sang chữ trong Excel

    Lap của mình dùng win8 64, có dùng được ko bạn?
     
    #20

Chia sẻ trang này