Đọc số tiền thành chữ là yêu cầu phổ biến trong Excel, đặc biệt khi xử lý hợp đồng, hóa đơn. Bài viết này hướng dẫn bạn cách tự xây dựng hàm đọc số tiền bằng chữ trong Excel, thay vì sử dụng Add-in.
Đọc số tiền bằng chữ
Tải file mẫu tại: http://bit.ly/2Upapa1
Những Khó Khăn Khi Đọc Số Tiền Bằng Chữ Tiếng Việt
Việc đọc số tiền thành chữ trong tiếng Việt khá phức tạp do một số nguyên nhân sau:
- Số tiền lớn: Việc phân tách tỷ/triệu/nghìn/trăm đòi hỏi nhiều công thức kết hợp.
- Phiên âm đa dạng: Từ ngữ như “bảy/bẩy”, “nghìn/ngàn”, “linh/lẻ” có thể khác nhau tùy vùng miền.
- Số chẵn/lẻ: Số tiền chẵn kết thúc bằng “đồng chẵn”, số lẻ kết thúc bằng “đồng”.
- Biến đổi từ ngữ: Các từ “một/mốt”, “bốn/tư”, “năm/lăm” thay đổi tùy ngữ cảnh.
- Ngoại tệ: Cách đọc số tiền ngoại tệ theo tiếng Việt có thể khác với cách đọc gốc.
Bài viết sẽ hướng dẫn xây dựng hàm đọc số tiền bằng chữ theo từng bước để tránh nhầm lẫn.
Xây Dựng Hàm Đọc Số Bằng Chữ
Bài viết hướng dẫn đọc số đến hàng trăm tỷ (12 chữ số). Các bạn có thể tự phát triển cho số lớn hơn.
Chuyển Số Về Dạng 12 Chữ Số
Để phân tách từng chữ số, cần chuyển số về dạng có đủ 12 chữ số, thêm số 0 ở trước nếu cần.
Cách đơn giản là cộng số với 10 mũ 12 (số có 12 số 0).
Ví dụ: 10.010.001.010 (11 chữ số) + 10^12 = 1.010.010.001.010. Lấy 12 chữ số từ phải sang trái: 010.010.001.010.
Cách Đọc số tiền bằng chữ
Tách Từng Chữ Số Vào 12 Vị Trí
Từ cột C đến N (dòng 2) đánh số 1 đến 12 để xác định vị trí chữ số. Dòng 3 dùng hàm tách từng chữ số trong ô B2:
Sử dụng hàm MID
:
Text
: Ô B2 (cố định tham chiếu).Start_num
: Vị trí bắt đầu (số ở dòng 2 + 1).Num_char
: Số ký tự cần lấy (ở đây là 1).
Kết hợp với hàm VALUE
để chuyển kết quả sang dạng số.
C3: =VALUE(MID($B$2,C2+1,1))
Sao chép công thức từ C3 sang phải (Ctrl+R).
Cách Đọc số tiền bằng chữ trong excel
Hàm Đọc Từng Vị Trí
Khi đọc số thành chữ, cần xét hai phần: phần bên trái và số tại vị trí đó. Các hàm viết ở dòng 5.
Đọc Hàng Trăm Tỷ
C5: =IF(C3=0,"",CHOOSE(C3,"một","hai","ba","bốn","năm","sáu","bảy","tám","chín")&" trăm")
Hàm IF
kiểm tra C3 có bằng 0. Hàm CHOOSE
đọc số thành chữ.
Đọc Hàng Chục Tỷ
D5: =IF(SUM(C3:D3)=0,"",IF(AND(D3=0,E3=0),"",IF(AND(D3=0,E3>0),D4,CHOOSE(D3,"mười","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"))))
Tại D4, tạo danh sách chọn “linh” hoặc “lẻ” (Data Validation/List).
Đọc số tiền bằng chữ trong excel
Đọc Hàng Tỷ
E5: =IF(SUM(C3:E3)=0,"",IF(AND(SUM(C3:D3)>0,E3=0)," "&E4,CHOOSE(E3,IF(D3>0,"mốt","một"),"hai","ba","bốn",IF(D3>0,"lăm","năm"),"sáu","bảy","tám","chín")&" "&E4))
Tại E4, tạo danh sách chọn “tỷ” hoặc “tỉ”. Số 1 đọc là “mốt” hoặc “một”, số 5 đọc là “lăm” hoặc “năm” tùy thuộc vào hàng chục.
Cách lập hàm Đọc số tiền bằng chữ trong excel
Mời các bạn xem tiếp phần 2 tại:
Hướng dẫn cách tự xây dựng công thức đọc số tiền bằng chữ trong excel – Phần 2
Tham khảo:
Add-in đọc số thành chữ từ Học Excel Online
Cách viết số tiền bằng chữ trong excel theo cách đơn giản nhất
Discussion about this post