Dùng công thức nào đễ tăng tốc độ tính toán?

Liên hệ QC

anhtuan1066

Thành viên gạo cội
Tham gia
10/3/07
Bài viết
5,802
Được thích
6,912
Đây là 1 file tương đối đơn giãn, nhưng dử liệu thì tương đối nhiều (các bạn mở file đính kèm xem thử). Tôi xin trình bày cách hình thành file như sau:
Bước 1: Nhập liệu vào sheet Detail
Bước 2: Insert name\Define. Gồm có 4 Name lấy từ dòng 9 đến dòng 10.000
Đến bước này thì vẫn chưa có vấn đề gì xảy ra. File vẫn chạy và tính toán tương đối nhanh khi có sự thay đỗi
Nhưng khi tôi sang sheet TOTAL và dùng hàm SUMPRODUCT đễ lấy tỗng cộng theo XƯỞNG, theo NGÀY thì bắt đầu có vấn đề. Mỗi khi có sự thay đổi thì trên thanh Status bar xuất hiên "calculating Cells" và số %. Nó chạy rất chậm, phải mất ít nhất 10s đến khoãng 10phút khi có sự thay đỗi (chẵng hạn là thay đỗi tháng trong ComboBox). Trên máy cấu hình thấp thì nó chạy chậm kinh khũng.
Tôi phải tạm thời giãm bớt số dòng trong Define Name từ 10.000 dòng xuống còn 6.000 dòng thì tốc độ tính toán tăng lên dc 1 chút.
Tôi nghĩ file này cũng khá bình thường và chúng ta chắc cũng từng ứng dụng rất nhiều. Thế nhưng trong trường hợp của tôi, nếu tổng hợp dử liệu trong 1 năm vào chung vào 1 sheet thì theo tính toán sơ bộ phải cần đến khoảng 30.000 dòng (tức là trong Define Name cần it nhất đến dòng thứ 30.000). Vậy xin các bạn góp ý cho tôi 1 vài vấn đề:
-Nếu vẫn giữ nguyên công thức củ mà muốn tăng tốc độ tính toán cho Excel thì tôi phải làm gì đây?
-Cũng với mục đích tăng tốc độ tính toán cho Excel, nếu tôi ko dùng công thức SUMPRODUCT thì phải dùng công thức gì?
-Ngoài ra còn cách nào khác nữa ko? (Thay đỗi cấu trúc dử liệu chẵng hạn).
Tôi vẫn chưa nghĩ ra dc cách nào khả thi, mong nhận dc sự trợ giúp của các bạn!
ANH TUẤN
 
Lần chỉnh sửa cuối:
anhtuan1066 đã viết:
Đây là 1 file tương đối đơn giãn, nhưng dử liệu thì tương đối nhiều (các bạn mở file đính kèm xem thử). Tôi xin trình bày cách hình thành file như sau:
Bước 1: Nhập liệu vào sheet Detail
Bước 2: Insert name\Define. Gồm có 4 Name lấy từ dòng 9 đến dòng 10.000
Đến bước này thì vẫn chưa có vấn đề gì xảy ra. File vẫn chạy và tính toán tương đối nhanh khi có sự thay đỗi
Nhưng khi tôi sang sheet TOTAL và dùng hàm SUMPRODUCT đễ lấy tỗng cộng theo XƯỞNG, theo NGÀY thì bắt đầu có vấn đề. Mỗi khi có sự thay đổi thì trên thanh Status bar xuất hiên "calculating Cells" và số %. Nó chạy rất chậm, phải mất ít nhất 10s đến khoãng 10phút khi có sự thay đỗi (chẵng hạn là thay đỗi tháng trong ComboBox). Trên máy cấu hình thấp thì nó chạy chậm kinh khũng.
Tôi phải tạm thời giãm bớt số dòng trong Define Name từ 10.000 dòng xuống còn 6.000 dòng thì tốc độ tính toán tăng lên dc 1 chút.
Tôi nghĩ file này cũng khá bình thường và chúng ta chắc cũng từng ứng dụng rất nhiều. Thế nhưng trong trường hợp của tôi, nếu tổng hợp dử liệu trong 1 năm vào chung vào 1 sheet thì theo tính toán sơ bộ phải cần đến khoảng 30.000 dòng (tức là trong Define Name cần it nhất đến dòng thứ 30.000). Vậy xin các bạn góp ý cho tôi 1 vài vấn đề:
-Nếu vẫn giữ nguyên công thức củ mà muốn tăng tốc độ tính toán cho Excel thì tôi phải làm gì đây?
-Cũng với mục đích tăng tốc độ tính toán cho Excel, nếu tôi ko dùng công thức SUMPRODUCT thì phải dùng công thức gì?
-Ngoài ra còn cách nào khác nữa ko? (Thay đỗi cấu trúc dử liệu chẵng hạn).
Tôi vẫn chưa nghĩ ra dc cách nào khả thi, mong nhận dc sự trợ giúp của các bạn!
ANH TUẤN

Bạn thử xem nhé. (mình thử với 30.000 dòng)

Chú ý :
1. Mỗi khi có thay đổi ở Detail, bạn phải nhấn nút Update để nó cập nhật cột LOẠI lại.

2. Cột A của Detail sử dụng Validation giúp bạn nhập chính xác

3. Các ô ở cột No không được để trống, nếu phát hiện ra thì khi Update sẽ báo cho bạn biết

4. Khi Update báo lỗi thì bạn không sử dụng nút tính toán được.

Chương trình, nếu vẫn còn sử dụng công thức thì vẫn chạy chậm, lập trình hoàn toàn (không có công thức của Excel) thì nhanh hơn nhiều (gấp 4 lần) nhưng lười quá.

Thân!
 

File đính kèm

Giải pháp tối ưu về tốc độ

Yêu cầu của bạn có 2 cách:

1-Dùng PivotTable (PV), nhưng nhược điểm của PV là không tạo theo các điều kiện của người dùng.

2- Sử dụng A-Tools v3.1 trở lên. Tốc độ đảm bảo nhanh hơn những gì Excel thuần túy là 80%. Kể cả khi vùng dữ liệu của bạn lên đến 60.000 dòng.

Trước khi chạy, bạn hãy cài đặt A-Tools v3.1 trước.

http://www.giaiphapexcel.com/forum/showthread.php?p=16415#post16415

Tôi gửi cách làm của tôi lên mọi người tham khảo.





----
 

File đính kèm

Lần chỉnh sửa cuối:
____Trước tiên xin cám ơn 2 bạn TuanVNUNI và bạn Hiếu, nhưng... ko ổn các bạn ơi. Cách của bạn TuanVNUNI rất hay nhưng vì file này thường phải gữi đi các nơi, nếu máy nhận dc ko có A-Tools thì làm sao? Còn cách bạn Hiếu thì tôi vẫn chưa thử dc, vì chẳng hiểu lý do gì mà khi bấm vào TINH TOAN thì nó chạy dc đến 1 số % nào đó rồi đứng im chẳng chịu tính gì cả (thường là ko vượt quá 10%), chờ hoài ko dc cuối cùng tôi phải End process nó bằng Task manager.
____Đễ tôi diễn giãi sơ qua cho các bạn dễ hiểu hơn nha: File này dùng đễ theo dỏi chi phí của các phân xưởng (Đã mua gì, trong thời gian nao). Công ty có rất nhiều phân xưởng dc chia ra thành 4 khu vực: FACTORY 1, 2, 3 và FACTORY 4. Có 1 vài phân xưởng ko nằm trong 4 khu vực này nên tạm gọi nó là OTHERS (VD: Assembly, Stitching là phân xưởng thuộc FACTORY 1... Còn Maint, Office cũng là xưỡng nhưng lại thuộc OTHERS vì ko nằm trong 4 khu vực trên)
____Ngày trước cô thư ký làm mỗi ngày 1 sheet, mỗi tháng 1 file. Hàng ngày cô ấy có nhiệm vụ đi thu thập thông tin về chi phí các xưởng rồi nhập vào file tính toán và gữi cho Sếp. Tôi thấy cách làm này chưa thuận tiện cho việc thống kê nên đã gôm chung 1 năm thành 1 file thì đụng phải chuyện "chạy chậm" này.
____Đúng ra thì file vẫn chạy dc ko có vấn đề gì, nhưng tôi chưa hài lòng lắm về tốc độ tính toán của nó, nhất là khi người ta mở nhiều chương trình cùng lúc thì nó càng chậm.
____Các bạn có ý kiến gì thêm đễ trợ giúp tôi ko? Xin cám ơn tất cả!
____ANH TUẤN
 
Hãy đặt name động sẽ tốt hơn

anhtuan1066 đã viết:
Đây là 1 file tương đối đơn giãn, nhưng dử liệu thì tương đối nhiều (các bạn mở file đính kèm xem thử). Tôi xin trình bày cách hình thành file như sau:
Bước 1: Nhập liệu vào sheet Detail
Bước 2: Insert name\Define. Gồm có 4 Name lấy từ dòng 9 đến dòng 10.000
Đến bước này thì vẫn chưa có vấn đề gì xảy ra. File vẫn chạy và tính toán tương đối nhanh khi có sự thay đỗi
Nhưng khi tôi sang sheet TOTAL và dùng hàm SUMPRODUCT đễ lấy tỗng cộng theo XƯỞNG, theo NGÀY thì bắt đầu có vấn đề. Mỗi khi có sự thay đổi thì trên thanh Status bar xuất hiên "calculating Cells" và số %. Nó chạy rất chậm, phải mất ít nhất 10s đến khoãng 10phút khi có sự thay đỗi (chẵng hạn là thay đỗi tháng trong ComboBox). Trên máy cấu hình thấp thì nó chạy chậm kinh khũng.
Tôi phải tạm thời giãm bớt số dòng trong Define Name từ 10.000 dòng xuống còn 6.000 dòng thì tốc độ tính toán tăng lên dc 1 chút.
Tôi nghĩ file này cũng khá bình thường và chúng ta chắc cũng từng ứng dụng rất nhiều. Thế nhưng trong trường hợp của tôi, nếu tổng hợp dử liệu trong 1 năm vào chung vào 1 sheet thì theo tính toán sơ bộ phải cần đến khoảng 30.000 dòng (tức là trong Define Name cần it nhất đến dòng thứ 30.000). Vậy xin các bạn góp ý cho tôi 1 vài vấn đề:
-Nếu vẫn giữ nguyên công thức củ mà muốn tăng tốc độ tính toán cho Excel thì tôi phải làm gì đây?
-Cũng với mục đích tăng tốc độ tính toán cho Excel, nếu tôi ko dùng công thức SUMPRODUCT thì phải dùng công thức gì?
-Ngoài ra còn cách nào khác nữa ko? (Thay đỗi cấu trúc dử liệu chẵng hạn).
Tôi vẫn chưa nghĩ ra dc cách nào khả thi, mong nhận dc sự trợ giúp của các bạn!
ANH TUẤN

Tôi đã đặt lại name theo hình thức name động thấy tốc độ tính toán tăng lên đáng kể(Đã thử tới dòng thứ 15000, kèm trong file). Bạn nghiên cứu nhé
Thân
 

File đính kèm

Nếu muốn "chạy nhanh" hơn nữa, bạn dùng SUMIF thay cho SUMPRODUCT. Tôi đã thử và thấy tốt hơn.

*IF(A9="";"";IF(ISNA(VLOOKUP(A9;$F$9:$F$31;1;0));"OTHERS";VLOOKUP(A9;$F$12:$F$31;1;0))
*SUMPRODUCT((DATE=$A9)*(DEPT=C$8)*(AMOUNT))

sửa thành:
*IF(A9="";"";IF(ISNA(VLOOKUP(A9;$F$9:$F$31;1;0));"OTHERS";VLOOKUP(A9;$F$9:$F$31;1;0)))&D9
*SUMIF(DEPT;C$8&$A9;AMOUNT)
 
anhtuan1066 đã viết:
____Trước tiên xin cám ơn 2 bạn TuanVNUNI và bạn Hiếu, nhưng... ko ổn các bạn ơi. Cách của bạn TuanVNUNI rất hay nhưng vì file này thường phải gữi đi các nơi, nếu máy nhận dc ko có A-Tools thì làm sao? Còn cách bạn Hiếu thì tôi vẫn chưa thử dc, vì chẳng hiểu lý do gì mà khi bấm vào TINH TOAN thì nó chạy dc đến 1 số % nào đó rồi đứng im chẳng chịu tính gì cả (thường là ko vượt quá 10%), chờ hoài ko dc cuối cùng tôi phải End process nó bằng Task manager.
____Đễ tôi diễn giãi sơ qua cho các bạn dễ hiểu hơn nha: File này dùng đễ theo dỏi chi phí của các phân xưởng (Đã mua gì, trong thời gian nao). Công ty có rất nhiều phân xưởng dc chia ra thành 4 khu vực: FACTORY 1, 2, 3 và FACTORY 4. Có 1 vài phân xưởng ko nằm trong 4 khu vực này nên tạm gọi nó là OTHERS (VD: Assembly, Stitching là phân xưởng thuộc FACTORY 1... Còn Maint, Office cũng là xưỡng nhưng lại thuộc OTHERS vì ko nằm trong 4 khu vực trên)
____Ngày trước cô thư ký làm mỗi ngày 1 sheet, mỗi tháng 1 file. Hàng ngày cô ấy có nhiệm vụ đi thu thập thông tin về chi phí các xưởng rồi nhập vào file tính toán và gữi cho Sếp. Tôi thấy cách làm này chưa thuận tiện cho việc thống kê nên đã gôm chung 1 năm thành 1 file thì đụng phải chuyện "chạy chậm" này.
____Đúng ra thì file vẫn chạy dc ko có vấn đề gì, nhưng tôi chưa hài lòng lắm về tốc độ tính toán của nó, nhất là khi người ta mở nhiều chương trình cùng lúc thì nó càng chậm.
____Các bạn có ý kiến gì thêm đễ trợ giúp tôi ko? Xin cám ơn tất cả!
____ANH TUẤN
File của mình test lại vẫn bình thường.

Đây là File mình đã làm lại, chạy nhanh hơn gấp 4 lần. (mình thử với 60.000 dòng mất khoảng 30s) Bạn xem nhé :
 

File đính kèm

XuanThanh đã viết:
Tôi đã đặt lại name theo hình thức name động thấy tốc độ tính toán tăng lên đáng kể(Đã thử tới dòng thứ 15000, kèm trong file). Bạn nghiên cứu nhé
Thân

Các Name của bạn thực chất mới chỉ có 600 dòng (do hàm counta), nên vẫn thấy không sao.

Bạn thử copy xuống 15.000 hàng hoặc 30.000 hàng xem sao ??, sau đó bạn qua bên Sheet Total thay đổi tháng.
Mình mới thử có 15.000 hàng mà máy muốn đứng luôn rồi.

Thân!
 
Bạn Hiếu ơi, tôi thật sự ko phải có ý chê bất kỳ lời giãi của ai cả, nhưng khi test trên máy thì nó chậm lắm, đã vậy còn báo lỗi tùm lum, vì thế mà tôi mới nói đễ bạn lưu ý thôi. Vì tôi thì ko rành về macro nên chẳng biết nguyên nhân là từ đâu. Cũng có thể là nguyên nhân từ máy tính của tôi? Nhưng bạn rành về macro thì sẽ hiểu dc nguyên nhân hơn là tôi mà. Ah, mà cũng lạ quá. Khi đang đọc lại những góp ý của các bạn thì tôi đòng thời test lại file của bạn Hiếu, quả thật nhanh và ko có vấn đề. Thế là thế nào nhỉ? Rõ ràng cách đây vài tiếng đồng hồ nó còn báo lỗi!!! TIN HỌC ĐÚNG LÀ ĐIÊN CÁI ĐẦU!!!
Quả đúng như bạn Hiếu nói về vấn đề Name động, hiện giờ do dử liệu còn ít, counta chỉ đếm dc vài trăm dòng nên tốc độ tăng là đương nhiên. Nếu dử liệu lên đến 20.000 dòng thì nó... chết ngắt (tôi đang test 20.000 dòng và nó đang chết đây, phải Task manager\End Process)
Tôi đang nghĩ đến vấn đề sẽ tổ chức lại CSDL... Có thể lại phải chia ra thành 12 sheet cho 12 tháng, nhưng nếu vậy thì mỗi sheet cũng có khoảng 3000 dòng (vẫn nhiều, dưới 1000 dòng là tuyệt nhất). Hay lại làm như cô thư ký kia: Mỗi ngày 1 sheet (thế thì dở quá). Hay là làm nó trên Access (tôi lại ko rành). Có bạn nào rành về Access cho tôi 1 lời khuyên: Liệu làm file này trên Access thì tốc độ có tăng ko? Làm sao nhỉ???
Mong sự đóng góp và trợ giúp của các bạn!
ANH TUẤN
 
anhtuan1066 đã viết:
Bạn Hiếu ơi, tôi thật sự ko phải có ý chê bất kỳ lời giãi của ai cả, nhưng khi test trên máy thì nó chậm lắm, đã vậy còn báo lỗi tùm lum, vì thế mà tôi mới nói đễ bạn lưu ý thôi. Vì tôi thì ko rành về macro nên chẳng biết nguyên nhân là từ đâu. Cũng có thể là nguyên nhân từ máy tính của tôi? Nhưng bạn rành về macro thì sẽ hiểu dc nguyên nhân hơn là tôi mà. Ah, mà cũng lạ quá. Khi đang đọc lại những góp ý của các bạn thì tôi đòng thời test lại file của bạn Hiếu, quả thật nhanh và ko có vấn đề. Thế là thế nào nhỉ? Rõ ràng cách đây vài tiếng đồng hồ nó còn báo lỗi!!! TIN HỌC ĐÚNG LÀ ĐIÊN CÁI ĐẦU!!!
Quả đúng như bạn Hiếu nói về vấn đề Name động, hiện giờ do dử liệu còn ít, counta chỉ đếm dc vài trăm dòng nên tốc độ tăng là đương nhiên. Nếu dử liệu lên đến 20.000 dòng thì nó... chết ngắt (tôi đang test 20.000 dòng và nó đang chết đây, phải Task manager\End Process)
Tôi đang nghĩ đến vấn đề sẽ tổ chức lại CSDL... Có thể lại phải chia ra thành 12 sheet cho 12 tháng, nhưng nếu vậy thì mỗi sheet cũng có khoảng 3000 dòng (vẫn nhiều, dưới 1000 dòng là tuyệt nhất). Hay lại làm như cô thư ký kia: Mỗi ngày 1 sheet (thế thì dở quá). Hay là làm nó trên Access (tôi lại ko rành). Có bạn nào rành về Access cho tôi 1 lời khuyên: Liệu làm file này trên Access thì tốc độ có tăng ko? Làm sao nhỉ???
Mong sự đóng góp và trợ giúp của các bạn!
ANH TUẤN
Bạn hãy thử File thứ hai của mình xem.
Trên máy mình , mình thử với 60 ngàn dòng thì mất khoảng 30s thôi.

Không cần dùng Access trong trường hợp này, mượn Đao của Quan Vân Trường về để mổ gà thì phí quá (đi mượn được đao vvề thì mọi người đã đi ngủ rồi !!??)

Thân!
 
Uh... Quả thật là nó mất khoảng 30s cho việc tính toán 60.000 dòng (rất nhanh).
Cho đến bây giờ chắc chỉ có cách của bạn là khả quan nhất (chỉ đáng tiếc tôi lại ko rành về Macro nên ko thể thưởng thức dc cái hay trong đó)
Cám ơn bạn Hiếu và tất cả mọi người đã nhiệt tình trợ giúp (vì chuyện tưởng nhỏ như móng tay mà lại chẳng nhỏ tí nào)
ANH TUẤN
 
Chuyển qua dùng sumif như Paraduong, tôi làm thử, hoàn toàn công thức với >62.000 dòng chạy khoảng 45s.
Cột No trong total chỉ nên lấy công thức ngày 1,29,30,31, còn ngày 2-28 là +1, giảm thiểu lượng truy xuất. Nhanh hơn 1 chút.
Lấy tháng bạn dùng validation thì sẽ nhanh hơn combo box trên form. Nhanh hơn 1 chút nữa.
Phần công thức trong DEPT nên dùng match theo name Loai: Stitching1,....
=D9&" "&IF($A9="","",IF(ISNA(MATCH($A9,Loai,0)),"OTHERS",$A9)) nhanh hơn vlookup.
 
Lần chỉnh sửa cuối:
ThuNghi đã viết:
Chuyển qua dùng sumif như Paraduong, tôi làm thử, hoàn toàn công thức với >62.000 dòng chạy khoảng 45s.
Cột No trong total chỉ nên lấy công thức ngày 1,29,30,31, còn ngày 2-28 là +1, giảm thiểu lượng truy xuất. Nhanh hơn 1 chút.
Lấy tháng bạn dùng validation thì sẽ nhanh hơn combo box trên form. Nhanh hơn 1 chút nữa.
Phần công thức trong DEPT nên dùng match theo name Loai: Stitching1,....
=D9&" "&IF($A9="","",IF(ISNA(MATCH($A9,Loai,0)),"OTHERS",$A9)) nhanh hơn vlookup.

Sao kỳ thế nhỉ, máy mình chạy chậm lắm (nếu dùng công thức), ThuNghi có thể gửi lên 1 File khoảng 60.000 dòng như ý của bạn để mọi người tham khảo có được không ??

Thân!
 
Khoảng 45s - 60s gì đó không có đồng hồ nên đoán
Mình đang dùng P3, 800.
Bạn xem qua file.
Xin Admin cho thêm tài nguyên nhé, cám ơn!
 
Lần chỉnh sửa cuối:
Ai cha cha! Tôi ko đễ ý đến cách của bạn Paraduong, thì ra bạn ấy dùng 1 cách cũng rất thông minh: là tính trước 1 phần bên sheet Detail rồi nên tốc độ tính toán bên sheet Total tăng lên thật ấn tượng. Bạn Hiếu xem lại nha! Tôi đang test trên máy tính 60.000 dòng đây, thời gian mất cho việc tính toán gần như là... 0S (Quá tuyệt!). Mục đích cuối cùng là chỉ cần tăng tốc cho sheet Total thôi, vì bên sheet Detail khi ta nhập liệu mỗi ngày khoảng 100 dòng, tốc độ có chậm đôi chút cũng ko thành vấn đề. Nhưng khi ta chọn vào ComboBox bên sheet Total thì cần phải thật nhanh!
Cám ơn nhiều nhiều
ANH TUẤN
 
Vậy sao không thanks 1 phát, cho ngừơi nghỉ ra và ng nhắc.
 
____Tất nhiên là phải Thank rồi... Nhưng tôi xin lỗi, hôm qua gắp quá nên test ko kỹ. Chính xác là như vầy nè:
____-Trên máy P4, 3GHz, RAM512: Test 6.000 dòng mất 0s
____-Trên máy P4, 3GHz, RAM512: Test 6.0000 dòng mất 5s
____-Trên máy AMD, 300Hz, RAM32: Test 6.000 dòng mất 10s
____-Trên máy AMD, 300Hz, RAM32: Test 6.0000 dòng mất trên 1phút
____Có điều lúc Save thì hơi lâu 1 chút, nhưng như thế là quá tuyệt rồi. Cám ơn tất cả
____ANH TUẤN
 
anhtuan1066 đã viết:
____Tất nhiên là phải Thank rồi... Nhưng tôi xin lỗi, hôm qua gắp quá nên test ko kỹ. Chính xác là như vầy nè:
____-Trên máy P4, 3GHz, RAM512: Test 6.000 dòng mất 0s
____-Trên máy P4, 3GHz, RAM512: Test 6.0000 dòng mất 5s
____-Trên máy AMD, 300Hz, RAM32: Test 6.000 dòng mất 10s
____-Trên máy AMD, 300Hz, RAM32: Test 6.0000 dòng mất trên 1phút
____Có điều lúc Save thì hơi lâu 1 chút, nhưng như thế là quá tuyệt rồi. Cám ơn tất cả
____ANH TUẤN

Đúng là nhanh, quả thực hàm sumif nhanh hơn Sumproduct khi chỉ cần 1 ĐK
tuy nhiên 0s thì bạn nên xem lại

Chỉ cần chú ý khi dùng File này là đặt chế độ tính toán ở Manual, khi nào cần tính toán bạn nhấn Shift + F9 thì sẽ nhanh hơn nhiều

Nếu đặt ở chế độ auto thì khi nhập số liệu gặp khó khăn (chờ tính toán)

Vì dùng toàn công thức nên File sẽ lớn. (cái nào cũng có 2 mặt của nó)

Thân!
 
Thì ở trên tôi nói kỹ rồi mà. 0s là với trường hợp 6000 dòng thôi (chứ ko phải 60.000 dòng)
Nhân đây bạn Hiếu cho tôi hỏi: Bạn làm cách nào đễ khống chế dc Status bar vậy. Tôi thấy trong file của bạn, khi bấm vào TINH TOÁN thì Status bar xuất hiện dòng chử: "Da duoc... %" . Vậy nếu khi mình bấm Save, bạn có thể làm cho nó xuất hiện dòng chử "Dang luu" dc ko? Cám ơn bạn trước
ANH TUẤN
 
Tôi thử dùng hàm sumproduct theo name động như sau:
- Tìm dòng đầu tiên của tháng yêu cầu (date theo TT tăng)
- Tìm số dòng theo YC
- DateOff = offset(date,dongdau,0,sodong,1)
......
- Bỏ luôn cột Dept (không cần)
- Others chính là sumproduct của tất cả trừ đi tham khảo file). Hay là dùng sumproduct(isna(match()...)
- 60.000 dòng/12 # 5.000 dòng tháng.
Bảo đảm truy xuất trong vòng 30-40s
 

File đính kèm

Web KT

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

Back
Top Bottom