Giúp về code VBA tính tổng với nhiều điều kiện (1 người xem)

Liên hệ QC

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

lambt191

Thành viên mới
Tham gia
11/8/15
Bài viết
2
Được thích
0
Trong file đính kèm của em ở sheet SoLuong và Đơn giá em có làm hàm sumifs, mong các bác chuyển qua VBA dùm em ạ. Thêm nữa là đây chỉ là VD, thực tế em tính tổng tới mấy ngàn mã nên dữ liệu rất công kềnh và file rất nặng, em không thể paste value vì sau này còn sửa chữa nên em muốn để công thức tự nhảy, các bác có kinh nghiệm nào giúp em làm cho file nhẹ đi với ạ /-*+/
 

File đính kèm

Trong file đính kèm của em ở sheet SoLuong và Đơn giá em có làm hàm sumifs, mong các bác chuyển qua VBA dùm em ạ. Thêm nữa là đây chỉ là VD, thực tế em tính tổng tới mấy ngàn mã nên dữ liệu rất công kềnh và file rất nặng, em không thể paste value vì sau này còn sửa chữa nên em muốn để công thức tự nhảy, các bác có kinh nghiệm nào giúp em làm cho file nhẹ đi với ạ /-*+/

Bạn muốn dùng VBA, lại muốn để công thức, lại muốn nhẹ file, với mấy ngàn mã?
Công thức nào bạn cũng "chơi" tuốt cả cột, mỗi cột 1.048.576 ô kiểu này, máy nào chạy nỗi:
PHP:
=SUMIFS(Nguon!$D:$D;Nguon!$F:$F;SoLuong!F$3;Nguon!$A:$A;SoLuong!$B15;Nguon!$B:$B;SoLuong!$C15;Nguon!$H:$H;SoLuong!$A15)
em không thể paste value vì sau này còn sửa chữa nên em muốn để công thức tự nhảy
Sau khi sửa chữa xong cho code chạy 1 phát không vừa bụng sao?
 
Upvote 0
Bạn muốn dùng VBA, lại muốn để công thức, lại muốn nhẹ file, với mấy ngàn mã?
Công thức nào bạn cũng "chơi" tuốt cả cột, mỗi cột 1.048.576 ô kiểu này, máy nào chạy nỗi:
PHP:
=SUMIFS(Nguon!$D:$D;Nguon!$F:$F;SoLuong!F$3;Nguon!$A:$A;SoLuong!$B15;Nguon!$B:$B;SoLuong!$C15;Nguon!$H:$H;SoLuong!$A15)

Sau khi sửa chữa xong cho code chạy 1 phát không vừa bụng sao?
vì mỗi mã vật tư phân biệt với nhau dựa trên nhóm, tên và bộ phận, thêm nữa em phải tổng hợp hàng tuần và hàng tháng nên mới lấy nhiều điều kiện như vậy. Hiện tại thì em đang để manual cho nhanh nhưng cũng mất thời gian quá, có cách nào tối ưu hơn trong trường hợp này không ạ?
 
Upvote 0
(1) Vì mỗi mã vật tư phân biệt với nhau dựa trên nhóm, tên và bộ phận, thêm nữa em phải tổng hợp hàng tuần và hàng tháng nên mới lấy nhiều điều kiện như vậy.

(2) Trong file đính kèm của em ở sheet SoLuong và Đơn giá em có làm hàm sumifs, mong các bác chuyển qua VBA dùm em ạ. Thêm nữa là đây chỉ là VD, thực tế em tính tổng tới mấy ngàn mã nên dữ liệu rất công kềnh và file rất nặng, em không thể paste value vì sau này còn sửa chữa nên em muốn để công thức tự nhảy, các bác có kinh nghiệm nào giúp em làm cho file nhẹ đi với ạ /-*+/

(1) Theo mình bạn cần sửa lại mã cho hợp lí hơn, như:
Nên có độ dài như sau; Mà đã vậy thì theo mình nên là:
NNTTBFXXX
NN: dùng để chỉ nhóm; (& tất nhiên bạn cần lập bảng thuyên chuyển/diển dịch chúng, như
N1:= Nhóm rẽ
N9:= Nhóm mắc
NL:= Nhóm chất lõng
NR:= Nhóm chất rắn
NB:= Nhóm bột
. . . . )
Theo mình thì mã theo tên là không cần thiết; Tuy bạn làm vậy có tính tương tác cao giữa mã & người dùng, nhưng bạn đã đánh mất đi tính tốc độ (sâu xa hơn là mất tính khoa học)
Cho nên mã chỉ nên là NNBFXXX, trong đó XXX là 3 chữ số theo thứ tự tăng dần cùa bộ fận nào đó.

(2) Bạn có thể để dòng đầu là công thức; các dòng sau nên chuyển hết thành dạng Value, có gì bất tiện trong vấn đề này không? Chứ file sẽ nhẹn nhàng & lẹ làng hơn nhiều!
 
Upvote 0
Bạn muốn dùng VBA, lại muốn để công thức, lại muốn nhẹ file, với mấy ngàn mã?
Công thức nào bạn cũng "chơi" tuốt cả cột, mỗi cột 1.048.576 ô kiểu này, máy nào chạy nỗi:
PHP:
=SUMIFS(Nguon!$D:$D;Nguon!$F:$F;SoLuong!F$3;Nguon!$A:$A;SoLuong!$B15;Nguon!$B:$B;SoLuong!$C15;Nguon!$H:$H;SoLuong!$A15)

Sau khi sửa chữa xong cho code chạy 1 phát không vừa bụng sao?
Chào các ace GPE với yêu cầu như trên nhưng mình chỉ cần code vba không cần để công thức paste value là ok rồi hiện tại mình dùng hàm sumifs fia load lâu quá, ace GPE giúp mình với. Thank
 
Upvote 0
Web KT

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

Back
Top Bottom