Gỡ rối khi file quá nhiều công thức, tính toán quá chậm

Liên hệ QC

tantan

Thành viên mới
Tham gia
4/11/07
Bài viết
44
Được thích
16
Nghề nghiệp
Kỹ sư
Chào các anh chị,
Tôi đang làm 1 file với yêu cầu rất đơn giản:
1. Tổng hợp số lượng hàng tồn cuối của mỗi mã hàng
2. Chỉ ra hạn sử dụng gần nhất và xa nhất của mã hàng đó
3. Số lượng của 2 loại HSD trên.

Dữ liệu cho trước
- Sheet Nhập có mã thuốc, số lượng và HSD là quan trọng nhất
- Sheet Xuất chỉ có mã thuốc và lượng xuất (không có HSD đi kèm) nên phải lập thêm 1 số cột phụ tính toán

Do file tính toán nhiều công thức quá nên mỗi lần save lại chậm như rùa à, các anh chị có thời gian thì xem giúp có cách nào nhanh hơn không

Thanks các anh chị rất nhiều

http://www.mediafire.com/?9cap93x7nf1bswx
 
File chậm quá, đơ hết cả máy. Bạn dùng quá nhiều hàm SUMPRODUCT, hàm này tính toán rất chậm vì vậy bị ảnh hưởng là phải rồi. Công thức của bạn có thể dùng hàm SUMIF là ok rồi, cần gì phải dùng SUMPRODUCT.
 
Name động HSD mà dùng SUMPRODUCT là không hay rồi, cái đó chỉ cần COUNTIF(XX,"") thôi là được. Công thức Fill nhiều quá, nên làm LIST/ TABLE thì hay hơn. Các công thức SUMPRODUCT có thể thay thế bởi SUMIF. Copy công thức đến 3000 dòng, máy chạy chậm là phải.
Hạn sử dụng, có nhiều giá trị, không biết lấy giá trị nào, nếu lấy giá trị nhỏ nhất chắc chắn phải sort dữ liệu.

Còn rất nhiều điều bất hợp lý về cơ sở dữ liệu, khi đã lập cơ sở dữ liệu thì đừng nên tính toán, khi tính toán thì lập bảng dựa trên cơ sở dữ liệu thì như vậy mới ổn.
 
Thử chỉnh sửa cho bạn, vẫn còn chậm lắm, nhưng đã cải thiện nhiều. Bạn sử dụng chi những số thứ tự tới 2, 3 cột, thấy mà rối rắm, công thức cứ lòng vòng. Thôi thì tạm giải quyết cho bạn.

Góp ý thêm là khi không muốn hiển thị số 0 trong bảng thì trong Option chọn không hiển thị số 0 chứ đừng có Format Conditional nhé!
 

File đính kèm

  • kiem hang ton.rar
    317.6 KB · Đọc: 50
Thank các bạn nhiều, dùng sumproduct theo thói quen, lâu rồi chẳng nhớ đến sumif. Tại file này lấy dữ liệu từ access hơn 1 năm nên nhiều như vậy. Mình đang coi file của minhthien có gì sẽ trao đổi tiếp nhé.

Hi sau khi xem file của bạn mình thấy chạy ngon lành mà, đâu có chậm đâu. Kết nhất cái cách bạn sử dụng offset. Đợt này mình dùng nhiều offset nhưng còn nhiều chỗ cần học hỏi lắm.

Bạn sử dụng chi những số thứ tự tới 2, 3 cột, thấy mà rối rắm, công thức cứ lòng vòng
Cái này để trả lời câu hỏi HSD nào nhỏ nhất còn hàng mà.

Công thức Fill nhiều quá, nên làm LIST/ TABLE thì hay hơn
: Không hiểu ý bạn là gì à?
Hạn sử dụng, có nhiều giá trị, không biết lấy giá trị nào, nếu lấy giá trị nhỏ nhất chắc chắn phải sort dữ liệu.
Đúng là phải sort dữ liệu nhưng vì lấy từ access nên sort sẵn rùi.
Mình có thắc mắc thêm là sau khi tạo macro sort dữ liệu, lưu lại rồi mở ra nó lại biến mất nhỉ?
 
Lần chỉnh sửa cuối:
Web KT

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

Back
Top Bottom