Cách chuyển số thành số thành chữ

Liên hệ QC

Xavuong90

Thành viên mới
Tham gia
19/7/17
Bài viết
40
Được thích
3
Giới tính
Nam
Mong các bạn chỉ dùm mình cách chuyển số tiền thành chữ bằng cách dùng công thức ạ! Vì mình không biết vba, máy mình xử lý công việc cũng không có nối mạng!
 
Bạn thử kiếm trên diễn đàn hình như co công thức của bạn @hoangdanh282vn hay sao á, nhớ mang máng.
 
Mình từng search ở 1 trang VN có cái này, đọc số ở ô A2 thành tiền (đồng), bạn thử gõ số vào ô A2 rồi paste công thức dưới vào ô khác xem nhé (hình như chỉ giới hạn ở hàng trăm tỷ)

Mã:
=IF(OR(LEN(FLOOR(A2,1))>=13,FLOOR(A2,1)<=0)+N(T("HocExcel.Online")),"Không thể đọc số",TRIM(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(CONCATENATE(
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),1,1)+1,"","một trăm ","hai trăm ","ba trăm ","bốn trăm ","năm trăm ","sáu trăm ","bảy trăm ","tám trăm ","chín trăm "),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),2,1)+1,"",
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),3,1)+1,"mười","mười một","mười hai","mười ba","mười bốn","mười lăm","mười sáu","mười bảy","mười tám","mười chín"),"hai mươi","ba mươi","bốn mươi","năm mươi","sáu mươi","bảy mươi","tám mươi","chín mươi"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),2,1))>1,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),3,1)+1,""," mốt"," hai"," ba"," bốn"," lăm"," sáu"," bảy"," tám"," chín"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),2,1))=0,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),3,1)+1,"","một","hai","ba","bốn","năm","sáu","bảy","tám","chín"),"")),IF(A2>=10^9," tỷ%%% ",""),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),4,1)+1,IF(AND(INT(A2)>1000000000,VALUE(MID(TEXT(INT(A2),REPT(0,12)),4,3))<>0),"không trăm ",""),"một trăm ","hai trăm ","ba trăm ","bốn trăm ","năm trăm ","sáu trăm ","bảy trăm ","tám trăm ","chín trăm "),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),5,1)+1,IF(AND(INT(A2)>100000000,VALUE(MID(TEXT(INT(A2),REPT(0,12)),5,2))<>0),"@@@ ",""),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),6,1)+1,"mười","mười một","mười hai","mười ba","mười bốn","mười lăm","mười sáu","mười bảy","mười tám","mười chín"),"hai mươi","ba mươi","bốn mươi","năm mươi","sáu mươi","bảy mươi","tám mươi","chín mươi"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),5,1))>1,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),6,1)+1,""," mốt"," hai"," ba"," bốn"," lăm"," sáu"," bảy"," tám"," chín"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),5,1))=0,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),6,1)+1,"","một","hai","ba","bốn","năm","sáu","bảy","tám","chín"),"")),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),4,3))>0," triệu%%% ",""),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),7,1)+1,IF(AND(INT(A2)>1000000,VALUE(MID(TEXT(INT(A2),REPT(0,12)),7,3))<>0),"không trăm ",""),"một trăm ","hai trăm ","ba trăm ","bốn trăm ","năm trăm ","sáu trăm ","bảy trăm ","tám trăm ","chín trăm "),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),8,1)+1,IF(AND(INT(A2)>100000,VALUE(MID(TEXT(INT(A2),REPT(0,12)),8,2))<>0),"@@@ ",""),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),9,1)+1,"mười","mười một","mười hai","mười ba","mười bốn","mười lăm","mười sáu","mười bảy","mười tám","mười chín"),"hai mươi","ba mươi","bốn mươi","năm mươi","sáu mươi","bảy mươi","tám mươi","chín mươi"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),8,1))>1,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),9,1)+1,""," mốt"," hai"," ba"," bốn"," lăm"," sáu"," bảy"," tám"," chín"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),8,1))=0,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),9,1)+1,"","một","hai","ba","bốn","năm","sáu","bảy","tám","chín"),"")),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),7,3))," ###"&IF(--RIGHT(A2,3)=0," ","%%% "),""),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),10,1)+1,IF(AND(INT(A2)>1000,VALUE(MID(TEXT(INT(A2),REPT(0,12)),10,3))<>0)+N(T("HocExcel.Online")),"không trăm ",""),"một trăm ","hai trăm ","ba trăm ","bốn trăm ","năm trăm ","sáu trăm ","bảy trăm ","tám trăm ","chín trăm "),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),11,1)+1,IF(AND(INT(A2)>10,VALUE(MID(TEXT(INT(A2),REPT(0,12)),11,2))<>0),"@@@ ",""),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),12,1)+1,"mười","mười một","mười hai","mười ba","mười bốn","mười lăm","mười sáu","mười bảy","mười tám","mười chín"),"hai mươi","ba mươi","bốn mươi","năm mươi","sáu mươi","bảy mươi","tám mươi","chín mươi"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),11,1))>1,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),12,1)+1,""," mốt"," hai"," ba"," bốn"," lăm"," sáu"," bảy"," tám"," chín"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),11,1))=0,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),12,1)+1,"","một","hai","ba","bốn","năm","sáu","bảy","tám","chín"),""))),"@@@","linh"),"###","ngàn"),"%%%",", "),"  "," ")&" đồng"&T(N("HocExcel.Online: Có thể sửa tùy chọn @@@ linh, ### ngàn, %%% dấu phẩy, và bỏ đồng"))))
 
Mình từng search ở 1 trang VN có cái này, đọc số ở ô A2 thành tiền (đồng), bạn thử gõ số vào ô A2 rồi paste công thức dưới vào ô khác xem nhé (hình như chỉ giới hạn ở hàng trăm tỷ)

Mã:
=IF(OR(LEN(FLOOR(A2,1))>=13,FLOOR(A2,1)<=0)+N(T("HocExcel.Online")),"Không thể đọc số",TRIM(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(CONCATENATE(
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),1,1)+1,"","một trăm ","hai trăm ","ba trăm ","bốn trăm ","năm trăm ","sáu trăm ","bảy trăm ","tám trăm ","chín trăm "),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),2,1)+1,"",
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),3,1)+1,"mười","mười một","mười hai","mười ba","mười bốn","mười lăm","mười sáu","mười bảy","mười tám","mười chín"),"hai mươi","ba mươi","bốn mươi","năm mươi","sáu mươi","bảy mươi","tám mươi","chín mươi"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),2,1))>1,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),3,1)+1,""," mốt"," hai"," ba"," bốn"," lăm"," sáu"," bảy"," tám"," chín"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),2,1))=0,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),3,1)+1,"","một","hai","ba","bốn","năm","sáu","bảy","tám","chín"),"")),IF(A2>=10^9," tỷ%%% ",""),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),4,1)+1,IF(AND(INT(A2)>1000000000,VALUE(MID(TEXT(INT(A2),REPT(0,12)),4,3))<>0),"không trăm ",""),"một trăm ","hai trăm ","ba trăm ","bốn trăm ","năm trăm ","sáu trăm ","bảy trăm ","tám trăm ","chín trăm "),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),5,1)+1,IF(AND(INT(A2)>100000000,VALUE(MID(TEXT(INT(A2),REPT(0,12)),5,2))<>0),"@@@ ",""),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),6,1)+1,"mười","mười một","mười hai","mười ba","mười bốn","mười lăm","mười sáu","mười bảy","mười tám","mười chín"),"hai mươi","ba mươi","bốn mươi","năm mươi","sáu mươi","bảy mươi","tám mươi","chín mươi"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),5,1))>1,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),6,1)+1,""," mốt"," hai"," ba"," bốn"," lăm"," sáu"," bảy"," tám"," chín"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),5,1))=0,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),6,1)+1,"","một","hai","ba","bốn","năm","sáu","bảy","tám","chín"),"")),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),4,3))>0," triệu%%% ",""),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),7,1)+1,IF(AND(INT(A2)>1000000,VALUE(MID(TEXT(INT(A2),REPT(0,12)),7,3))<>0),"không trăm ",""),"một trăm ","hai trăm ","ba trăm ","bốn trăm ","năm trăm ","sáu trăm ","bảy trăm ","tám trăm ","chín trăm "),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),8,1)+1,IF(AND(INT(A2)>100000,VALUE(MID(TEXT(INT(A2),REPT(0,12)),8,2))<>0),"@@@ ",""),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),9,1)+1,"mười","mười một","mười hai","mười ba","mười bốn","mười lăm","mười sáu","mười bảy","mười tám","mười chín"),"hai mươi","ba mươi","bốn mươi","năm mươi","sáu mươi","bảy mươi","tám mươi","chín mươi"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),8,1))>1,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),9,1)+1,""," mốt"," hai"," ba"," bốn"," lăm"," sáu"," bảy"," tám"," chín"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),8,1))=0,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),9,1)+1,"","một","hai","ba","bốn","năm","sáu","bảy","tám","chín"),"")),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),7,3))," ###"&IF(--RIGHT(A2,3)=0," ","%%% "),""),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),10,1)+1,IF(AND(INT(A2)>1000,VALUE(MID(TEXT(INT(A2),REPT(0,12)),10,3))<>0)+N(T("HocExcel.Online")),"không trăm ",""),"một trăm ","hai trăm ","ba trăm ","bốn trăm ","năm trăm ","sáu trăm ","bảy trăm ","tám trăm ","chín trăm "),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),11,1)+1,IF(AND(INT(A2)>10,VALUE(MID(TEXT(INT(A2),REPT(0,12)),11,2))<>0),"@@@ ",""),
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),12,1)+1,"mười","mười một","mười hai","mười ba","mười bốn","mười lăm","mười sáu","mười bảy","mười tám","mười chín"),"hai mươi","ba mươi","bốn mươi","năm mươi","sáu mươi","bảy mươi","tám mươi","chín mươi"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),11,1))>1,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),12,1)+1,""," mốt"," hai"," ba"," bốn"," lăm"," sáu"," bảy"," tám"," chín"),IF(VALUE(MID(TEXT(INT(A2),REPT(0,12)),11,1))=0,
CHOOSE(MID(TEXT(INT(A2),REPT(0,12)),12,1)+1,"","một","hai","ba","bốn","năm","sáu","bảy","tám","chín"),""))),"@@@","linh"),"###","ngàn"),"%%%",", "),"  "," ")&" đồng"&T(N("HocExcel.Online: Có thể sửa tùy chọn @@@ linh, ### ngàn, %%% dấu phẩy, và bỏ đồng"))))
Dài quá. Nhưng cảm ơn bạn nhiều!!!!
 
Dài quá. Nhưng cảm ơn bạn nhiều!!!!
Ừ, dài thật, mình chỉ sưu tầm thôi mà. Nhưng mình thấy dùng cũng OK.
mình paste ra notepad++ thấy có 21 dòng tổng là 4464 ký tự, trong công thức có gài quảng cáo tên website.
Nếu bạn có lược bớt được thì cho mình xin luôn đoạn code kết quả nhé :D
 
Không dùng hàm dò tìm đc sao các bạn!
 
Mong các bạn chỉ dùm mình cách chuyển số tiền thành chữ bằng cách dùng công thức ạ! Vì mình không biết vba, máy mình xử lý công việc cũng không có nối mạng!
Bạn có lý do gì để làm khó mình thế? Không biết VBA không phải là lý do. Bạn là người dùng thì bạn chỉ cần biết sử dụng code VBA (hàm) mà người khác đã viết. Biết dùng đến mức thành thạo. Thế thôi.
Mà dùng VBA thì liên qua gì tới "nối mạng" mà bạn cũng viện ra lý do "không nối mạng"?
 
Công thức ấy vốn mang tính chất minh hoạ.
Nếu áp dụng vào thực tế, ngừoi ta đưa tất cả các text vào một hoặc vài bảng trong một sheet nào đó và dùng names để tra. Nếu quen dùng table thì càng dễ. (tra names thì dùng INDEX thay vì CHOOSE)
Các biểu thức lặp lại cũng có thể dùng names.
 
Mong các bạn chỉ dùm mình cách chuyển số tiền thành chữ bằng cách dùng công thức ạ! Vì mình không biết vba, máy mình xử lý công việc cũng không có nối mạng!
Bạn google search "Addin đổi số thành chữ" là ra. Dùng công thức không rành sẽ làm rối đó.
 
Bạn có lý do gì để làm khó mình thế? Không biết VBA không phải là lý do. Bạn là người dùng thì bạn chỉ cần biết sử dụng code VBA (hàm) mà người khác đã viết. Biết dùng đến mức thành thạo. Thế thôi.
Mà dùng VBA thì liên qua gì tới "nối mạng" mà bạn cũng viện ra lý do "không nối mạng"?
Xin lỗi nhưng đính chính với bạn là việc máy tính tôi không nối mạng là tôi không thể sử dụng một số công cụ chuyển đổi có sẵn trên mạng nhé, không liên quan vba. Đồng thời tôi rất dở nên không biết vba nhé. Tôi ko biết thì tôi hỏi, bạn giỏi bạn chỉ tôi cám ơn chứ bạn đừng có bình luận kiểu móc họng vậy nhé!
 
Web KT

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

Back
Top Bottom