Đọc số bằng chữ dùng Name (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

hoangdanh282vn

Nguyễn Cảnh Hoàng Danh
Thành viên danh dự
Tham gia
21/12/07
Bài viết
1,902
Được thích
5,306
Nghề nghiệp
Kinh doanh các mặt hàng văn phòng phẩm
Mình gửi các bạn file đọc số bằng chữ dùng Name.
Ưu điểm của việc dùng Name so với công thức thường là có thể thao tác cùng một lúc cho nhiều cell khác nhau trong cùng một sheet, và chạy nhanh không kèm VBA.
Các bạn xem file đã bổ sung ở bài #12 và bài #39
 

File đính kèm

Lần chỉnh sửa cuối:
Rất hay và sáng tạo. Cái này mà dùng thêm cái này http://www.giaiphapexcel.com/forum/showpost.php?p=52751&postcount=1 nữa thì tính ứng dụng rất cao.

Em bổ sung thêm vài cái name theo bài của link trên để hoàn thiện hơn và có thể đọc số cho ô bất kỳ ô nào trong bảng tính. Bài này sẽ được cập nhật thêm vào phần Name của ebook sắp phát hành.

Thanh Phong
 
Lần chỉnh sửa cuối:
File bác gửi liệu có virus không. Em chưa dám load vì sợ... Máy em vừa rồi do down nhiều các file trên diễn đàn quá nên "nặng chịch virus" mới phải cài lại xong.

Bác hoangdanh82nv ơi. Bác hướng dẫn em cụ thể cái công thức đọc số cho em với. Em mở file của bác rồi nhưng chẳng thấy công thức gì cả. Chỉ thấy các dòng số đã đọc rồi thôi. Nếu có công thức excel mà có thể đọc được số. Bác reply lại cho em luôn với nhé. Cái này rất là bổ ích. Thanks bác.
 
Chỉnh sửa lần cuối bởi điều hành viên:
Rất hay và sáng tạo. Cái này mà dùng thêm cái này http://www.giaiphapexcel.com/forum/showpost.php?p=52751&postcount=1 nữa thì tính ứng dụng rất cao.

Em bổ sung thêm vài cái name theo bài của link trên để hoàn thiện hơn và có thể đọc số cho ô bất kỳ ô nào trong bảng tính. Bài này sẽ được cập nhật thêm vào phần Name của ebook sắp phát hành.

Thanh Phong

Cảm ơn Anh Phong
Em đã làm rồi nhưng thấy nó cũng chỉ dùng được cho từng sheet thôi, phải doubleclick vào cell hiện hành thì mới chạy đúng
Em gửi file đầy đủ đây
 

File đính kèm

Bạn chỉnh sửa lại sao cho =VND(cell) chứ công thức toàn chọn dòng phía bên cạnh thì khó sử dụng
 
Mình chẳng hiểu bạn hoangdanh làm cách nào mà ra cái dòng đọc nó ra được như thế. Tick vào ô đó chỉ thấy =VND thôi (không thể hiện công thức). Làm ơn nói rõ hơn được không! Thanks
 
Chào bạ hoangdanh,
Cám ơn bạn đã share thông tin cho mọi người, hiện nay mình rất cần đọc số bằng tiếng Anh, bạn có thể giúp mình được không. Giúp mình nhé mình đang rất cần.
Cám ơn bạn nhiều
 
Mình thấy còn thiếu 1 chút

Có cách nào làm cho đọc số ra chữ mà chữ đầu dòng viết hoa ko? "Mười đồng" chứ không phải là "mười đồng" nho cách huynh hoàn thiện giúp
 
Có cách nào làm cho đọc số ra chữ mà chữ đầu dòng viết hoa ko? "Mười đồng" chứ không phải là "mười đồng" nho cách huynh hoàn thiện giúp
Trời... mấy vụ này chỉ là xử lý chuổi... bạn tự "chế" cũng dc mà... Vụ đọc số quan trọng nhất... mấy cái khác thì tùy nhu cầu mà sáng tác cho phù hợp!
Các hàm mà hàm cần
LEFT, RIGHT, MID, LEN, PROPER... vân vân...
Thử xem
 

File đính kèm

Bác hoangdanh82nv ơi. Bác hướng dẫn em cụ thể cái công thức đọc số cho em với. Em mở file của bác rồi nhưng chẳng thấy công thức gì cả. Chỉ thấy các dòng số đã đọc rồi thôi. Nếu có công thức excel mà có thể đọc được số. Bác reply lại cho em luôn với nhé. Cái này rất là bổ ích. Thanks bác.

Cái này thì bạn vào Insert\Name\Define.. bạn sẽ thấy một rừng name chứa đựng các công thức, bạn từ từ tìm hiểu nha
Thân!
 
Sao em mở trên Excel 2007 thì bị lỗi và tự thoát Excel ra luôn, mở trên Office 2003 thì bình thường. Các anh thử xem có phải như thế không?
 
Chào các bạn!
mình là thành viên mới nên không hiểu lắm, các bạn co thể nói rõ hơn cách ứng dụng duơợc không? mình làm thử công thức đó trong excel rồi nhưng không đọc được, nó báo là #name?
 
Ah... lạ nhỉ? Tôi cũng bị lổi khi mở file trên Excel2007 ? Là sao ta?
Nếu nói Excel2007 ko chấp nhận macro 4 cũng ko đúng, vì cụ thể tôi mở những file khác có hàm macro 4 thì thấy bình thường, trừ file này!
Tìm nãy giờ ko ra dc nguyên nhân!
ANH TUẤN
 
Mình gửi các bạn file đọc số bằng chữ dùng Name.
Ưu điểm của việc dùng Name so với công thức thường là có thể thao tác cùng một lúc cho nhiều cell khác nhau trong cùng một sheet, và chạy nhanh không kèm VBA.

Quả là rất trí tuệ! Tôi có một vài thắc mắc bạn giải quyết như thế nào?

+ Để đặt công thức cho các workbook (file Excel) khác thì bạn sẽ làm thế nào? Liệu có phải mỗi một workbook đều phải copy tất cả các name sang không? Khi có sự sửa chữa công thức trong name thì sẽ mở tất cả các workbook đã đặt công thức có name VND để copy lại ?

chạy nhanh không kèm VBA.

+ Bạn thử copy cho vài nghìn dòng xem thế nào? Tôi thường hay thử tốc độ của các công thức khi copy nó cho 65000 dòng để dễ đánh giá. Nghe có vẻ việc thử nghiệm này không thực tế nhưng rất quan trọng đó. Một workbook sẽ có rất nhiều công thức, mỗi công thức làm chậm một ít thì tổng thể chúng sẽ tạo ra một sự nặng nề đáng sợ.
 
Thử nghiệm với dữ liệu 20.000 dòng. Sau khi thay đổi dữ liệu, làm cốc cafe xong quay về mới có kết quả !
Test Windows XP_SP3, CPU 3Gh-Ram 1GB- Excel 2003.
Chưa test VBA !
 
Thật tế đâu sử dụng nhiều vậy. Nên như vậy là hoàn hảo rồi.
 
Chào các bạn!
mình là thành viên mới nên không hiểu lắm, các bạn co thể nói rõ hơn cách ứng dụng duơợc không? mình làm thử công thức đó trong excel rồi nhưng không đọc được, nó báo là #name?

#name? là do excel không hiểu name mà bạn sử dụng.
Bạn thử trong file của mình hay file bạn làm, nếu file bạn làm thì bạn phải có đầy đủ các name như trong file của mình thì nó mới hiểu
 
Lần chỉnh sửa cuối:
Anh Tuân nêu lên 2 vấn đề lớn mà giải pháp này gặp phải. Mặt mạnh của giải pháp này là không dùng VBA và theo mình biết thì có rất nhiều cty không cho marco trong file thực thi hoặc luôn đặt chế độ diệt macro trong các PM diệt virus.

Macro4 được phép thực thi trong các phiên bản Office 2003 về trước (dù set Security là High). Riêng Office 2007 xem Macro4 là Macro và có sự kiểm soát chặt. Do vậy phạm vi ứng dụng của giải pháp này nhỏ hơn 1 tí nữa, nếu ai có nhu cầu và gặp các ràng buộc như nêu trên thì có thể áp dụng.

Hướng giải quyết cho việc bảo trì Name và sửa đổi có thể là:
1. Đặt Name dùng scope toàn cục (Workbook) và lưu thành 1 file riêng cất đó, ví dụ đặt tên là MNDocSo.
2. Mở workbook đích (cần chuyển Name sang) và mở file chứa Name lên và dùng lệnh Move or Copy... để tạo 1 bản sao 1 sheet trong file nguồn sang file đích. Các Name sẽ theo sheet được copy sang file đích và ta có thể sử dụng.

Khi bảo trì thì chỉnh sửa Name trong file lưu trữ sau đó thực hiện lệnh Move or Copy sang các file có sử dụng tính năng này. Các name trùng tên sẽ tự động được ghi đè lên bằng Name của file nguồn.

TP.
 
Đây chính là một phần quan trọng mà những người mới cần biết để sử dụng như thế nào cho tốt.

Anh Tuân nêu lên 2 vấn đề lớn mà giải pháp này gặp phải. Mặt mạnh của giải pháp này là không dùng VBA và theo mình biết thì có rất nhiều cty không cho marco trong file thực thi hoặc luôn đặt chế độ diệt macro trong các PM diệt virus.

Macro4 được phép thực thi trong các phiên bản Office 2003 về trước (dù set Security là High). Riêng Office 2007 xem Macro4 là Macro và có sự kiểm soát chặt. Do vậy phạm vi ứng dụng của giải pháp này nhỏ hơn 1 tí nữa, nếu ai có nhu cầu và gặp các ràng buộc như nêu trên thì có thể áp dụng.

Hướng giải quyết cho việc bảo trì Name và sửa đổi có thể là:
1. Đặt Name dùng scope toàn cục (Workbook) và lưu thành 1 file riêng cất đó, ví dụ đặt tên là MNDocSo.
2. Mở workbook đích (cần chuyển Name sang) và mở file chứa Name lên và dùng lệnh Move or Copy... để tạo 1 bản sao 1 sheet trong file nguồn sang file đích. Các Name sẽ theo sheet được copy sang file đích và ta có thể sử dụng.

Khi bảo trì thì chỉnh sửa Name trong file lưu trữ sau đó thực hiện lệnh Move or Copy sang các file có sử dụng tính năng này. Các name trùng tên sẽ tự động được ghi đè lên bằng Name của file nguồn.

TP.
 
Chúng ta phải đặt file này ở mức độ sáng tạo của nó, chú nếu để tính toán thì vẫn có thể dùng VBA.
 
Các bạn hãy chạy file này trên Excel2007 rồi đưa ra ý kiến nhé...
 
Các bạn hãy chạy file này trên Excel2007 rồi đưa ra ý kiến nhé...

máy em không cài OF2007 nên không thử xem nó như thế nào để tìm cách khắc phục, nên nhờ các Bác hỗ trợ vậy
Em đang viết tiếp đọc số USD bằng tiếng Anh và tiếng Việt, xong em sẽ post lên tiếp
 
Các bạn những ai dùng Office2007 thử lại file này xem còn lổi ko nha!
Chú ý: Nếu hàm trả về là "Số không đúng" cho mọi number thì các bạn hãy xem lại mục Excel Options.. rất có thể phần macro đã bị Disable
ANH TUẤN
 

File đính kèm

Các bạn những ai dùng Office2007 thử lại file này xem còn lổi ko nha!
Chú ý: Nếu hàm trả về là "Số không đúng" cho mọi number thì các bạn hãy xem lại mục Excel Options.. rất có thể phần macro đã bị Disable
ANH TUẤN
Đã test hiển thị ban đầu ko có lỗi (tất nhiên phải enable macro trong Trust center settings)
Nhưng thay đổi giá trị tại B11 hoặc copy công thức cho các ô khác thì xuất hiện lỗi.

9267ee_loi.jpg
 
Lần chỉnh sửa cuối:
Các bạn những ai dùng Office2007 thử lại file này xem còn lổi ko nha!
Chú ý: Nếu hàm trả về là "Số không đúng" cho mọi number thì các bạn hãy xem lại mục Excel Options.. rất có thể phần macro đã bị Disable
ANH TUẤN
Còn tôi thì vừa mới Open file ra đã gặp cái báo lỗi y như PhamNhuKhang gặp, chưa kịp làm gì với nó!
Tuy nhiên liếc ra phía sau cái bảng báo lỗi thì thấy có hiện lên dòng chữ đọc con số 123456789 ra chữ, nghĩa là cái hàm của Anh Tuấn có chạy đó, nhưng không hiểu sao Excel bị xung đột!
 
Chả hiểu sao file này tôi dùng đủ các kiểu, thậm chí tạo hẳn 1 file mới trên Excel2007 mà vẫn lổi... Lạ thật!
Nhưng file khác dùng macro4 vẫn chạy dc trên Excel2007 cơ mà!
ANH TUẤN
 
Chả hiểu sao file này tôi dùng đủ các kiểu, thậm chí tạo hẳn 1 file mới trên Excel2007 mà vẫn lổi... Lạ thật!
Nhưng file khác dùng macro4 vẫn chạy dc trên Excel2007 cơ mà!
ANH TUẤN

Theo như em test thì Macro4 sẽ mất tác dụng trong sheet nào bị protect, các sheet khác vẫn bình thường
 
Đọc số USD

Gửi các bạn file đọc số USD.
Các bạn xem và góp ý cho mình về lỗi chính tả nha. Cám ơn
 

File đính kèm

File USD này cũng chung số phận với VND.. nghĩa là ko chạy dc trên Excel2007
Tôi xin lưu ý rằng tôi dùng Portable_Office2007... nhưng ai đã cài đặt bộ Office2007 này đàng hoàng xin thử xem thế nào nhé
 
Mình thấy "kiểu đọc" này hay hay nhưng đụng vào thì lại báo lỗi không sử dụng được.
Tuy nhiên nếu để ứng dụng thì bấy lâu nay mình xài trộm vntools (của ai không rỏ - xin lỗi nghen), có thể nói rất tiện và rất dễ áp dụng cho mọi cell, mọi workbook và tốc độ không thua kém ai...
Công thức đọc như thế này =vnd('cell muốn đọc',True/False)
 
Lần chỉnh sửa cuối:
Mình thấy "kiểu đọc" này hay hay nhưng đụng vào thì lại báo lỗi không sử dụng được.
Tuy nhiên nếu để ứng dụng thì bấy lâu nay mình xài trộm vntools (của ai không rỏ - xin lỗi nghen), có thể nói rất tiện và rất dễ áp dụng cho mọi cell, mọi workbook và tốc độ không thua kém ai...
Công thức đọc như thế này =vnd('cell muốn đọc',True/False)

Đúng là file của mình báo lỗi đối với OF2007, và chưa tìm ra cách khắc phục, nhưng với Excel 2003 thì chạy vẫn tốt mà.
Về ứng dụng thực tiễn thì bạn tham khảo bài đọc số của Thầy Phamduylong rất hay.
Thân!
 
Đúng là file của mình báo lỗi đối với OF2007, và chưa tìm ra cách khắc phục, nhưng với Excel 2003 thì chạy vẫn tốt mà.
Tôi nghĩ trong các thủ tục của bạn có dùng một vài thuộc tính hay phương thức mà Excel 2007 không còn hổ trợ. Bạn thử test chạy từng bước xem sao?

Vbavn
 
Chào bạn,

Hình như bạn nên gửi thêm phần dán của bạn sau đó các máy sẽ nhận được bình thường,

Cám ơn bạn!!
 
Các bác rất thông mình và sáng tạo...!
nhung cho tôi hỏi nếu muốn copy name file này sang file khác thì làm cách nao ?
 
Các bác rất thông mình và sáng tạo...!
nhung cho tôi hỏi nếu muốn copy name file này sang file khác thì làm cách nao ?
1> Bạn mở file có chứa name đọc số, đồng thời mở file của bạn lên!
2> Qua file đọc số, clịck phải trên sheet tab, chọn Move or copy, khung To book chọn file của bạn, check vào ô Create a copy
3> Đóng file đọc số
4> Trong file của bạn hảy xóa sheet vừa đuợc move sang
vậy là tất cả các name của file đọc số đã đựoc chuyển hết sang file của bạn rồi đấy
Thử bằng cách gỏ vào 1 cell nào đó công thức:
=IF(ROW(cell cần đọc số),VND)
Chúc thành công
 
Cảm ơn bạn!
Tôi đã dùng thử, rất hay và sáng tạo. Tôi được biết thêm một cách lập hàm bằng name.
Trước đây, do nhu cầu, tôi cũng đã tự lập ra một hàm đọc chữ. Thật tình cờ, cách đọc của bạn rất giống cách đọc của tôi, mặc dù phương pháp đọc là khác nhau.
Nhân đây tôi cũng muốn gửi lên đây giải pháp của tôi hầu mong bạn có thể tham khảo.
Cách của tôi là lập hàm, tạo ra file add-in. Nên để sử dụng, các bạn down file đính kèm, giải nén vào một thư mục bất kì để ra file add-in. Sau đó trong Tools->Add-in các bạn browse đến thư mục đã giải và chọn file docchu.xla. Như vậy bạn đã có thể sử dụng hàm này.
Cú pháp là =bangchu(thamchieu)
ví dụ: A1 = 1205
A2 = bangchu(A1) cho ra kết quả Một nghìn hai trăm linh năm
A2 = bangchu(A1) & " đồng." cho ra kết quả Một nghìn hai trăm linh năm đồng.
Bạn có thể so sánh tốc độc đọc của hai phương pháp bằng cách copy khoảng 10000 dòng và có nhận xét của riêng mình. Ngoài ra cách này có thể đọc được tới 15 chữ số.
Cảm ơn các bạn đã quan tâm.
 

File đính kèm

Cảm ơn bạn!
Tôi đã dùng thử, rất hay và sáng tạo. Tôi được biết thêm một cách lập hàm bằng name.
Trước đây, do nhu cầu, tôi cũng đã tự lập ra một hàm đọc chữ. Thật tình cờ, cách đọc của bạn rất giống cách đọc của tôi, mặc dù phương pháp đọc là khác nhau.
Nhân đây tôi cũng muốn gửi lên đây giải pháp của tôi hầu mong bạn có thể tham khảo.
Cách của tôi là lập hàm, tạo ra file add-in. Nên để sử dụng, các bạn down file đính kèm, giải nén vào một thư mục bất kì để ra file add-in. Sau đó trong Tools->Add-in các bạn browse đến thư mục đã giải và chọn file docchu.xla. Như vậy bạn đã có thể sử dụng hàm này.
Cú pháp là =bangchu(thamchieu)
ví dụ: A1 = 1205
A2 = bangchu(A1) cho ra kết quả Một nghìn hai trăm linh năm
A2 = bangchu(A1) & " đồng." cho ra kết quả Một nghìn hai trăm linh năm đồng.
Bạn có thể so sánh tốc độc đọc của hai phương pháp bằng cách copy khoảng 10000 dòng và có nhận xét của riêng mình. Ngoài ra cách này có thể đọc được tới 15 chữ số.
Cảm ơn các bạn đã quan tâm.
Oh... đuơng nhiên nếu nói về tốc độ thì e rằng file đọc số bằng công thức này khó có thể so sánh với VBA...
Add-in đọc số đã có nói rất nhiều lần trên diển đàn rồi! Tuy nhiên topic này muốn tạo 1 cuộc đột phá khác hơn: Đọc số bằng công thức! Điều này chẳng dể dàng chút nào... và theo như tôi dc biết thì cho đến nay chưa ai làm dc cái tương tự như bạn Hoangdanh282vn đang làm!
Việc ta dùng cái gì trong thực tế là 1 chuyện, nhưng ở đây dù sao cũng rất khâm phục thuật toán của bạn ấy, và đó cũng chính là điều mà ta đáng để học hỏi
ANH TUẤN
 
Có cách nào làm cho đọc số ra chữ mà chữ đầu dòng viết hoa ko? "Mười đồng" chứ không phải là "mười đồng" nho cách huynh hoàn thiện giúp

Và nên thêm các dấu phảy "," để ngắt câu ví dụ: Một trăm mười một tỷ, một trăm mười một triệu, một trăm mười một nghìn, một trăm mười một đồng. một trăm mười một nghìn, một trăm mười một đồng.
 
Và nên thêm các dấu phảy "," để ngắt câu ví dụ: Một trăm mười một tỷ, một trăm mười một triệu, một trăm mười một nghìn, một trăm mười một đồng. một trăm mười một nghìn, một trăm mười một đồng.

Cám ơn bạn.
Đúng là file đọc số VND mình quên đưa dấu ","vào trong câu. Nhưng trong file USD thì đã có. Nếu bạn quan tâm thì mình sẽ chỉnh tiếp phần này.

To Bác Anhtuan1066 : Bác cứ đưa em lên mây thì e rằng khi xuống chắc là hơi khó khăn đây. Những gì em có được là nhờ học hỏi ở Bác và các Bạn khác trên diễn đàn.Cám ơn Bác và các bạn nhiều lắm.
 
Có 1 bạn gữi thư cho tôi thắc mắc về việc tìm Add-in nào đó có khả năng đọc dc cả số thập phân!
Bạn hoangdanh282vn xem tại đây:
http://www.giaiphapexcel.com/forum/showthread.php?t=12330
Vì vậy mà tôi lấy file đọc số bằng name này ra thử thì phát hiện nó cũng không có khả năng đọc số thập phân luôn!
Bạn thử cải tiến thêm phần này xem! (đọc dc cở 2 số thập phân cũng OK rồi)
Mến
ANH TUẤN
 
Mình đang cần file đọc số trong bảng tính excel và cách sử dụng. Mình không thể download được, bạn vui lòng gửi file này qua địa chỉ mail cho mình được không? Cảm ơn nhiều. huynhphuong080183@yahoo.com
 
Có 1 bạn gữi thư cho tôi thắc mắc về việc tìm Add-in nào đó có khả năng đọc dc cả số thập phân!
Bạn hoangdanh282vn xem tại đây:
http://www.giaiphapexcel.com/forum/showthread.php?t=12330
Vì vậy mà tôi lấy file đọc số bằng name này ra thử thì phát hiện nó cũng không có khả năng đọc số thập phân luôn!
Bạn thử cải tiến thêm phần này xem! (đọc dc cở 2 số thập phân cũng OK rồi)
Mến
ANH TUẤN
Mới viết hàm đọc số đọc 2 chữ số thập phân kèm đơn vị. Xem tại đây:
http://www.giaiphapexcel.com/forum/showthread.php?p=87854#post87854
 
Cám ơn bạn.
Đúng là file đọc số VND mình quên đưa dấu ","vào trong câu. Nhưng trong file USD thì đã có. Nếu bạn quan tâm thì mình sẽ chỉnh tiếp phần này.

Mình nghĩ sản phẩm này có tính ứng dụng vào thực tiễn rất cao, đặc biệt là đối với những người làm nghề kế toán, mỗi khi làm chứng từ thanh toán... không chỉ là tiết kiệm thời gian mà cái chính là giảm thiểu được những sai sót rất hay mắc phải (khi sửa số hay quên sửa chữ). Vì vậy mong bạn sớm hoàn thiện. Thanks !
 
chuyển từ số qua chữ font Vni và Unicode

Xin lỗi mình gửi lại file này mới đúng
--=0
 

File đính kèm

Cho em hỏi cách chuyển số thành chữ với!

Em mới nhập môn "giaiphapexcel.com" cùng các bác lên em "hai lúa" lắm! Mong các bác chỉ giúp em cách chuyển số thành chữ trong Excel với (Từ A->Z).
Em cảm ơn nhiều!**~**
 
Chuyển số thành chữ

Xin chào bạn Cong ly 0109 !
Mình có file đọc số nhưng gửi lên diễn đàn không được, vậy bạn cho mình địa chỉ mail mình gửi bạn tham khảo nhe !.
Thân . -\\/.
 
sao mình dùng khi tải về thì được nhưng gõ đúng cú pháp rồi với một tài liệu khác thì nó không đọc bằng chữ cho mình nhỉ
 
Lần chỉnh sửa cuối:
Tại cái này là dùng công thức kết hợp name bạn ah. Muốn sử cộng cho file khác bạn phải tải addin đọc số về sau đó add vào thì mới dùng được cho mọi file
 
Đọc số ra chữ

Nó là thế này đây! Đọc bất cứ cell nào ta muốn...
Cú phap:
Mã:
=IF(ROW(cell cần đọc),VND)
File đính kèm!
ANH TUẤN

Rất cảm ơn bác Tuấn đã chỉ giáo nhưng cách của bác em chỉ thực hiện được trong file của bác còn em tạo file này không thực hiện được. Mong chỉ giáo
Chúc sức khỏe bác cùng gia đình mịnh khỏa thành công.
Trân trọng cảm ơn!
 

File đính kèm

Rất cảm ơn bác Tuấn đã chỉ giáo nhưng cách của bác em chỉ thực hiện được trong file của bác còn em tạo file này không thực hiện được. Mong chỉ giáo
Chúc sức khỏe bác cùng gia đình mịnh khỏa thành công.
Trân trọng cảm ơn!
Bạn bấm Ctrl + F3 vào Define name xem thử ---> So sánh giửa file của tác giả và file của bạn có gì khác nhau
???
File bạn chẳng có 1 name nào---> Nó mà đọc được số ra chử mới ghê!
 
Đọc số ra chữ

Bạn bấm Ctrl + F3 vào Define name xem thử ---> So sánh giửa file của tác giả và file của bạn có gì khác nhau
???
File bạn chẳng có 1 name nào---> Nó mà đọc được số ra chử mới ghê!

ndu96081631 Cảm ơn bác em thấy có khác nhau rồi bây giờ muốn có name ở trong Define name thì làm như thế nào mong bác chỉ giáo
Đưa người ta không đưa qua sông
Mà sao có tiếng sóng ở trong lòng
 
ndu96081631 Cảm ơn bác em thấy có khác nhau rồi bây giờ muốn có name ở trong Define name thì làm như thế nào mong bác chỉ giáo
Đưa người ta không đưa qua sông
Mà sao có tiếng sóng ở trong lòng

Bạn mở lên 2 file: 1 file của bạn và 1 file của tác giả ---> Dùng chức năng Copy sheet (Click phải vào Sheet tab, chọn Move or copy) để copy 1 sheet bất kỳ từ file của tác giả vào file của bạn... Kể từ đây, bạn có thể áp dụng công thức được rồi vì name nó cũng theo sheet mà vào file của bạn rồi đấy ---> Nếu thích cứ xóa sheet mà bạn vừa add vào (name vẫn còn)
 
Cám ơn bạn.
Đúng là file đọc số VND mình quên đưa dấu ","vào trong câu. Nhưng trong file USD thì đã có. Nếu bạn quan tâm thì mình sẽ chỉnh tiếp phần này.

Bác thật là tuyệt vời ý }}}}}, cho iem hỏi bác đã sửa xong chưa thì cho em với mọi người xin nhé. Đa ta bác nhiều lắm
 
Cho mình hỏi nếu sử dụng cả 2 cách đọc tiếng Việt - Tiếng Anh trong cùng 1 file thì có xảy ra lỗi không vậy?. Cái này cũng hay gặp trong thực tế mà.
 
Sao mình copy move sang file minh roi và viết công thức nó ra " số không đúng" là sao mình ko hiểu.
 
Nó là thế này đây! Đọc bất cứ cell nào ta muốn...
Cú phap:
Mã:
=IF(ROW(cell cần đọc),VND)
File đính kèm!
ANH TUẤN
Bạn Tuấn ơi nhưng tớ sao tớ đánh cái dòng bạn bảo thì lại không đc bạn xem có phải dùng như vậy không chỉ bảo kỹ hơn cho tớ với nhé.
Tớ đang muốn chuyển từ số sang chữ tiếng anh có đc ko, cảm ơn các bạn nhiều nhiều
 
Bạn Tuấn ơi nhưng tớ sao tớ đánh cái dòng bạn bảo thì lại không đc bạn xem có phải dùng như vậy không chỉ bảo kỹ hơn cho tớ với nhé.
Tớ đang muốn chuyển từ số sang chữ tiếng anh có đc ko, cảm ơn các bạn nhiều nhiều
Bạn gõ thế nào mà nói là không được?
 
công thức của anhtuan1006 thế nào ấy. Mình làm theo công thức như thế mà có đc đâu, mình chẳng hiểu sao cả
 
công thức của anhtuan1006 thế nào ấy. Mình làm theo công thức như thế mà có đc đâu, mình chẳng hiểu sao cả
Bạn phải tải File của AnhTuan1066 về và bạn bấm Ctrl+F3 sẽ thấy công thức đó.

(Hàm theo Name của Thầy bó tay với số tiền thất thoát hàng ngàn tỷ đồng của Vinashin, hàm báo lỗi "Số quá lớn"! Ẹc... Ẹc...)
 
Lần chỉnh sửa cuối:
Các bạn hãy chạy file này trên Excel2007 rồi đưa ra ý kiến nhé...
Em sử dụng Office2007 cài đặt chính hiệu nó vẫn không chạy được, thày đã khắc phục đuợc chưa xin chỉ giúp em với, quả là em đang rất khoái "thằng này" vì chỗ em họ không cho chạy VBA, mà sử dụng Portable nhiều khi cũng ngại thày ah? Em chưa tìm hiểu kỹ lắm, cho em hỏi cái này có thể chạy cho nhiều Sheet của 1 Book được không ah?
 
Hàm =VNĐ(cell cần đoc ten)
 
Mình gửi các bạn file đọc số bằng chữ dùng Name.
Ưu điểm của việc dùng Name so với công thức thường là có thể thao tác cùng một lúc cho nhiều cell khác nhau trong cùng một sheet, và chạy nhanh không kèm VBA.
Các bạn xem file đã bổ sung ở bài #12 và bài #39
Sáng tạo! Nhưng thật sự không linh hoạt bằng hàm VBA.
 
Chaò bác Anh Tuấn, mình đã làm như cú pháp bạn đã hướng dẫn nhưng không thấy số tiền bằng chữ mà chỉ thấy #NAME? la sao? Mong bac chỉ giúp.Many thanks
 
Nó là thế này đây! Đọc bất cứ cell nào ta muốn...
Cú phap:
Code:

=IF(ROW(cell cần đọc),VND)
File đính kèm!
ANH TUẤN

cho mình hỏi chút ! sao bạn có thể làm công thức như thế này! bạn làm trong phần chức nào của xec vây?
bạn có thể hướng dẫn cụ thể hơn đc ko?​
 
Xem thử có ngon lành hơn của bạn không?

theo đường dẫn của bác, em vô đây down đuợc tính năng này hay quá. Rất hữu ích: Tuy nhiên:nhờ
hoangdanh282vn, vu_tuan_manh_linh, anhtuan1066, Bác Phong sửa nốt name cho anh em sài thì hay quá.
Với phương pháp dùng name, bổ sung tính năng dùng dấy phẩy và đồng chẵn v..v thì hay quá!
Với phương pháp dùng add - ins thì bổ sung thêm từ "đồng" thì tuyệt.
Tính năng hoàn thiện anh em dùng mới tiện, chứ nếu copy và paste value thì nhiều khi sẽ bị sót và dẫn đến sai.}}}}}
 
Lần chỉnh sửa cuối:
theo đường dẫn của bác, em vô đây down đuợc tính năng này hay quá. Rất hữu ích: Tuy nhiên:nhờ
hoangdanh282vn, vu_tuan_manh_linh, anhtuan1066, Bác Phong sửa nốt name cho anh em sài thì hay quá.
Với phương pháp dùng name, bổ sung tính năng dùng dấy phẩy và đồng chẵn v..v thì hay quá!
Với phương pháp dùng add - ins thì bổ sung thêm từ "đồng" thì tuyệt.
Tính năng hoàn thiện anh em dùng mới tiện, chứ nếu copy và paste value thì nhiều khi sẽ bị sót và dẫn đến sai.}}}}}
Mấy cái này chịu khó "mò mò" một hồi là tự làm được thôi mà
Cố gắng tự sửa đi bạn à ---> Mỗi người một ỳ khác nhau, ai biết làm sao cho vừa lòng tất cả
 
Mấy cái này chịu khó "mò mò" một hồi là tự làm được thôi mà
Cố gắng tự sửa đi bạn à ---> Mỗi người một ỳ khác nhau, ai biết làm sao cho vừa lòng tất cả
Bác NDU nói đúng đấy. Em đến với VBA chính là cái Add-Ins đọc số. Lúc đầu chả hiểu gì cả. May mà trước đó có học Pascal nên có chút tư duy về lập trình. Hàm đọc nguyên bản chưa ưng ý lắm. VD 1.002 thì nó chỉ đọc là một nghìn lẻ hai, em muốn nó đọc là Một nghìn không trăm linh hai. Tò mò mất cả ngày mới hiểu code, rồi lại tìm bảng mã nữa. Rồi lại thêm chữ "đồng" như bạn ducminhpham nói, rồi lại thêm luôn hai chữ "Bằng chữ:" ở đầu câu luôn. Nói thật là lúc khám phá ra, sướng lắm! Rồi dần dần đam mê lúc nào ấy, tự tìm hiểu VBA. Đến giờ tuy cũng chỉ là biết sơ sơ (nghĩa là không trọn vẹn) nhưng đã giúp ích rất nhiều cho công việc.
 
@dongthuyhuyen: Bạn thử trên file của Tác giả down về hay của bạn sau khi copy sheet doi so của bạn.
Bạn mô tả lại để các Cao thủ trợ giúp.
Mình thử trên cú pháp
=IF(ROW(cell cần đọc),VND) không được nhưng =IF(ROW(cell cần đọc);VND) thì OK--=0. (do sửa định nghĩa dấu).
nếu copy sang file ban thì làm cho đúng.
Lưu ý, copy sang file của mình thì phải chọn scrop là workbooks chứ không được chọn sheet, thì nó sẽ có tác dụng trên cả file.
(Bạn đọc lại hướng dẫn phía trên và làm lại xem).

 
Chào các bạn!
Mình là thành viên mới lớn tuổi, nên trình độ tin học có giới hạn, nhờ các bạn chỉ giùm cách chuyển đổi tổng thành tiền bằng số sang bằng chữ đơn giản nhất trong excel
Cám ơn các bạn rất nhiều!
 
Đọc số tiền thành chữ

Các bác giúp em với!
Yêu cầu:Các bác giúp em giảm số ký tự của công thức tại ô C1 nhưng vẫn đảm bảo kết quả như em đã làm!
Các bác lưu ý chỉ dùng công thức tại 1 ô chứ không dùng trung gian, hàm CONCATENATE() mình dùng để phân biệt giữa các đoạn để sửa công thức cho nhanh nên không cần bỏ hàm này!
 

File đính kèm

Lần chỉnh sửa cuối:
Mình dùng trên Excel 2007 không thấy lỗi gì cả.
 
cái này có dùng thêm code không bác "anhtuan 1066", sao mình làm trên file mới không được???
 
Cái này có dùng thêm Code không bác "anhtuan 1066", sao mình làm trên file mới không chạy như của bác??
 
cái nầy thì hay nhưng đọc không có dấu (,) gì hết bạn ơi
 
File USD này cũng chung số phận với VND.. nghĩa là ko chạy dc trên Excel2007
Tôi xin lưu ý rằng tôi dùng Portable_Office2007... nhưng ai đã cài đặt bộ Office2007 này đàng hoàng xin thử xem thế nào nhé

Đúng như Thầy nói. File đọc số bằng Names này con đã test trên phiên bản Office 207 ở công ty (có bản quyền _ đàng hoàng) thì không thấy vấn đề gì. Nhưng ở nhà phiên bản crack thì treo luôn.

Hiện Thầy đang dùng file nào thế ạ! Nếu có Thầy Up lên cho con xin nhé! Cả file sử dụng VBA + File sử dụng Name!
Trên diễn đàn giờ nhiều File quá con không biết nên chọn file nào?
Mong thầy giúp đỡ!
Cảm ơn Thầy!
 
em tò mò quá anh HOÀNG DANH282 ơi , anh phai đặt code vào chỗ nào thi khi nhập =VND nó mới hiện chứ???
 
cho mình hỏi. mình đã tải xuống rồi nhưng cài công thức cho file excel khác thi bi báo lỗi. còn áp dụng trong file mình tải xuống khi mở rộng ra các sheet vẫn được. không biết mình sai ở điểm nào.
 
cho mình hỏi. mình đã tải xuống rồi nhưng cài công thức cho file excel khác thi bi báo lỗi. còn áp dụng trong file mình tải xuống khi mở rộng ra các sheet vẫn được. không biết mình sai ở điểm nào.
Bạn mở file của bạn và file vừa tải xuống lên cùng lúc, vào file đọc số, nhấn chuột phải vào tên sheet doc so, chọn Move or Coppy > To book: bạn chọn file của bạn (mục đích: chuyển Name qua sheet của bạn). Đứng tại ô cần ra chữ, nhấn Ctrl+F3, sửa Name so : =TRIM(ô chứa số) > Enter > Colse. Gõ công thức tại ô cần ra chữ: =VND
 
Mình gửi các bạn file đọc số bằng chữ dùng Name.Ưu điểm của việc dùng Name so với công thức thường là có thể thao tác cùng một lúc cho nhiều cell khác nhau trong cùng một sheet, và chạy nhanh không kèm VBA.Các bạn xem file đã bổ sung ở bài #12 và bài #39
Bạn ơi,Mình đang dùng excel 2013 mình muốn đổi số thành chữ. Khi mình dùng add-im của bạn thì rất ok trong việc đổi số tiền việt nam đồng, nhưng khi mình muốn đổi sang đô la thì như thế nào? Bạn có thể giúp mình về vấn đề này không? VD: 1.234USD--> một ngàn hai trăm ba mươi bốn đô la. Cảm ơn bạn rất nhiều
 
Sao mình sử dụng công thức báo #NAME# vậy nhỉ?
 
Minh mo ra thi chi thay dong nao cung hien so khong dung thoi ah. Tro giup minh voi
 
Nhung ko duoc mo file chi thay hien so khong dung thoi ah. Có thể chỉ rõ hơn cho mình đc ko
 
[URL="http://www.giaiphapexcel.com/forum/member.php?29993-hoangdanh282vn"]hoangdanh282vn [/URL]cho mình hỏi về vài điều trong đọc số thành chữ với

- GetRC=SUBSTITUTE(REFTEXT(!$A$1);1;"") mình không hiểu hàm REFTEXT(!$A$1) này? trong excel k thấy hàm REFTEXT và tại sao lại có dấu ! ở công thức GetRow0=ROW(!$A$1) cũng có ?
- VT=GET.CELL(6;INDIRECT(GetRC;FALSE)) sao lại có GET.CELL vậy nhỉ ?
- Và cả hàm GET.NAME nữa


 
hoangdanh282vncho mình hỏi về vài điều trong đọc số thành chữ với

- GetRC=SUBSTITUTE(REFTEXT(!$A$1);1;"") mình không hiểu hàm REFTEXT(!$A$1) này? trong excel k thấy hàm REFTEXT và tại sao lại có dấu ! ở công thức GetRow0=ROW(!$A$1) cũng có ?
- VT=GET.CELL(6;INDIRECT(GetRC;FALSE)) sao lại có GET.CELL vậy nhỉ ?
- Và cả hàm GET.NAME nữa
Bạn gõ từ khóa Excel 4.0 Marco hoặc Marco4.0 để tìm hiểu hoặc vào đây tham khảo:
Hiện nay hiếm thấy ai sử dụng Marco4.0
 
Xin lỗi mình gửi lại file này mới đúng
--=0
File này đọc rất hay, nhưng còn một lỗi nhỏ, ai biết thì giúp dùm, Cám ơn mọi người. Ví dụ số: 102.002.002.005
File này đọc : Một trăm lẻ hai tỷ, hai triệu, không trăm lẻ hai ngàn, không trăm lẻ năm đồng
Mình muốn đọc là : Một trăm lẻ hai tỷ, không trăm lẻ hai triệu, không trăm lẻ hai ngàn, không trăm lẻ năm đồng
 
Lần chỉnh sửa cuối:
Xin lỗi mình gửi lại file này mới đúng
--=0
File này đọc số rất hay, nhưng còn một lỗi nhỏ, ai biết thì giúp dùm, Cám ơn mọi người. Ví dụ số: 102.002.002.005
File này đọc : Một trăm lẻ hai tỷ, hai triệu, không trăm lẻ hai ngàn, không trăm lẻ năm đồng
-> Mình muốn đọc là : Một trăm lẻ hai tỷ, không trăm lẻ hai triệu, không trăm lẻ hai ngàn, không trăm lẻ năm đồng
 

File đính kèm

Lần chỉnh sửa cuối:
iu điểm quá rõ ràng của cách này là
có thể bổ sung hàm chuyển đối số thành chữ vào file excel của ngừi iu qua dropbox, ko cần kêu nàng bật teamview để cài vntool hay vba gì sất
làm nàng bất ngờ chơi :))

quá đỉnh !
 
Cám ơn bạn.
Đúng là file đọc số VND mình quên đưa dấu ","vào trong câu. Nhưng trong file USD thì đã có. Nếu bạn quan tâm thì mình sẽ chỉnh tiếp phần này.

To Bác Anhtuan1066 : Bác cứ đưa em lên mây thì e rằng khi xuống chắc là hơi khó khăn đây. Những gì em có được là nhờ học hỏi ở Bác và các Bạn khác trên diễn đàn.Cám ơn Bác và các bạn nhiều lắm.
Mong bác sớm ra bản VND có đưa dấu "," ngăn cách vào câu đọc. Thanks
 

Dưới đây nhé các bác, ô H8 là ô cần đọc nhé.

=TRIM(IF(OR(LEN(FLOOR(H8,1))=13,FLOOR(H8,1)<=0),"Out of range",PROPER(SUBSTITUTE(CONCATENATE(CHOOSE(MID(TEXT(INT(H8),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(H8),REPT(0,12)),2,1)+1,"",CHOOSE(MID(TEXT(INT(H8),REPT(0,12)),3,1)+1,"mười","mười một","mười hai","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 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 mươi"),IF(VALUE(MID(TEXT(INT(H8),REPT(0,12)),2,1))>1,CHOOSE(MID(TEXT(INT(H8),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(H8),REPT(0,12)),2,1))=0,CHOOSE(MID(TEXT(INT(H8),REPT(0,12)),3,1)+1,""," một"," hai"," ba"," bốn"," lăm"," sáu"," bảy"," tám"," chín"),"")),IF(H8>=10^9," tỷ ",""),CHOOSE(MID(TEXT(INT(H8),REPT(0,12)),4,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(H8),REPT(0,12)),5,1)+1,"",CHOOSE(MID(TEXT(INT(H8),REPT(0,12)),6,1)+1,"mười","mười một","mười hai","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 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 mươi"),IF(VALUE(MID(TEXT(INT(H8),REPT(0,12)),5,1))>1,CHOOSE(MID(TEXT(INT(H8),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(H8),REPT(0,12)),5,1))=0,CHOOSE(MID(TEXT(INT(H8),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(H8),REPT(0,12)),4,3))>0," triệu ",""),CHOOSE(MID(TEXT(INT(H8),REPT(0,12)),7,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(H8),REPT(0,12)),8,1)+1,"",CHOOSE(MID(TEXT(INT(H8),REPT(0,12)),9,1)+1,"mười","mười một","mười hai","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 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 mươi"),IF(VALUE(MID(TEXT(INT(H8),REPT(0,12)),8,1))>1,CHOOSE(MID(TEXT(INT(H8),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(H8),REPT(0,12)),8,1))=0,CHOOSE(MID(TEXT(INT(H8),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(H8),REPT(0,12)),7,3))," nghìn ",""),CHOOSE(MID(TEXT(INT(H8),REPT(0,12)),10,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(H8),REPT(0,12)),11,1)+1,"",CHOOSE(MID(TEXT(INT(H8),REPT(0,12)),12,1)+1,"mười","mười một","mười hai","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 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 mươi"),IF(VALUE(MID(TEXT(INT(H8),REPT(0,12)),11,1))>1,CHOOSE(MID(TEXT(INT(H8),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(H8),REPT(0,12)),11,1))=0,CHOOSE(MID(TEXT(INT(H8),REPT(0,12)),12,1)+1,""," một"," hai"," ba"," bốn"," lăm"," sáu"," bảy"," tám"," chín"),"")))," "," ")&IF(FLOOR(H8,1)>1," đồng"))))
 

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

Back
Top Bottom