Sắp xếp tỉ trọng theo averageif rồi count (5 người xem)

Liên hệ QC

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

tieuthubuongbinh

Học hoài vẫn dốt
Tham gia
3/9/08
Bài viết
567
Được thích
388
Giới tính
Nữ
Chào các tiền bối,

Sau khi làm pivot xong, em cần tính averageif của các mã hàng, sau đó tính tỉ trọng của từng mã hàng trên tổng, sau đó sort cột tỉ trọng này theo thứ tự tăng dần (smallest to largest).

Hiện giờ vì ko sort được trên pivot nên em phải copy ra và tính toán rồi mới sort theo % cont, cũng nhanh nhưng mà mỗi lần refresh pivot thì phải làm lại nên cũng mắc công, nhờ các bác giúp em CT ở cột I (các cột còn lại em tự cài hàm được ạ). Em nghĩ là cần dùng cột phụ để averageif sau đó mới đi liệt kê (thứ tự nhỏ đến lớn của cột averageif) ra cột I.

Cám ơn các bác nhiều,
Thân,
TTBB
 

File đính kèm

Chào các tiền bối,

Sau khi làm pivot xong, em cần tính averageif của các mã hàng, sau đó tính tỉ trọng của từng mã hàng trên tổng, sau đó sort cột tỉ trọng này theo thứ tự tăng dần (smallest to largest).

Hiện giờ vì ko sort được trên pivot nên em phải copy ra và tính toán rồi mới sort theo % cont, cũng nhanh nhưng mà mỗi lần refresh pivot thì phải làm lại nên cũng mắc công, nhờ các bác giúp em CT ở cột I (các cột còn lại em tự cài hàm được ạ). Em nghĩ là cần dùng cột phụ để averageif sau đó mới đi liệt kê (thứ tự nhỏ đến lớn của cột averageif) ra cột I.

Cám ơn các bác nhiều,
Thân,
TTBB
Hổng biết bạn muốn sao, chỉ làm ra kết quả "giống giống" như của bạn thôi. Nếu không đúng thì "la lên".
###### Tôi không khoái công thức tham chiếu cả cột như J:J, K:K... Nếu dự trù dữ liệu của mình chỉ trong khoảng 10000 dòng thì tham chiếu J7:J10000, K7:K10000..., mắc gì phải "chơi" cả cột 1048576 dòng?
 

File đính kèm

Hổng biết bạn muốn sao, chỉ làm ra kết quả "giống giống" như của bạn thôi. Nếu không đúng thì "la lên".
###### Tôi không khoái công thức tham chiếu cả cột như J:J, K:K... Nếu dự trù dữ liệu của mình chỉ trong khoảng 10000 dòng thì tham chiếu J7:J10000, K7:K10000..., mắc gì phải "chơi" cả cột 1048576 dòng?

Dạ, cột số liệu tháng 4 sai hết thầy ơi. Con có để CT sumifs để thầy xem cách lấy dữ liệu cho các tháng ạ. Cột averageif thì có vẻ đúng (con cần lấy trung bình khi <>0). Dữ liệu 1 tháng cho 1 mã hàng sẽ có nhiều dòng nha thầy. Thầy xem lại giúp con nha.

Cơ mà con có nỗi khổ phải dùng hàm, là vì sếp nhìn vô còn biết con tính toán như thế nào nên vba thì ổng ko nhìn được rồi bắt con đi chứng minh thì lại mắc công làm thủ công. Nên con mong có luôn 2 cách (vba cho nhanh) và hàm để dành khi bị bắt chứng minh thì ráp cho lẹ.

###### Hihi tại con lười đó mà
 

File đính kèm

Dạ, cột số liệu tháng 4 sai hết thầy ơi. Con có để CT sumifs để thầy xem cách lấy dữ liệu cho các tháng ạ. Cột averageif thì có vẻ đúng (con cần lấy trung bình khi <>0). Dữ liệu 1 tháng cho 1 mã hàng sẽ có nhiều dòng nha thầy. Thầy xem lại giúp con nha.

Cơ mà con có nỗi khổ phải dùng hàm, là vì sếp nhìn vô còn biết con tính toán như thế nào nên vba thì ổng ko nhìn được rồi bắt con đi chứng minh thì lại mắc công làm thủ công. Nên con mong có luôn 2 cách (vba cho nhanh) và hàm để dành khi bị bắt chứng minh thì ráp cho lẹ.

###### Hihi tại con lười đó mà
"Đắm đuối" luôn à nghe!
Công thức M7
PHP:
=SUMIFS(MCSI!$C$2:$C$9999;MCSI!$B$2:$B$9999;C$6;MCSI!$F$2:$F$9999;$A7)
Không "đá động" gì đến status (R) phải không? Code của tôi có xét cột Status = "R"
Khi chạy code thì sheet MCSI không được để chế độ Filter.
MCSI dòng cuối là 21351, bạn dùng công thức đến dòng 9999 có chắc ăn kết quả đúng không?
Dùng VBA cho cột nào? Công thức cho cột nào?
Híc! Vậy làm công thức thủ công hết cho ổng xem, VBA làm gì.
 
"Đắm đuối" luôn à nghe!
Công thức M7
PHP:
=SUMIFS(MCSI!$C$2:$C$9999;MCSI!$B$2:$B$9999;C$6;MCSI!$F$2:$F$9999;$A7)
Không "đá động" gì đến status (R) phải không? Code của tôi có xét cột Status = "R"
Khi chạy code thì sheet MCSI không được để chế độ Filter.
MCSI dòng cuối là 21351, bạn dùng công thức đến dòng 9999 có chắc ăn kết quả đúng không?
Dùng VBA cho cột nào? Công thức cho cột nào?
Híc! Vậy làm công thức thủ công hết cho ổng xem, VBA làm gì.
Hic... tại cố làm lúc nửa đêm nó vậy đó Thầy, mắt quáng gà rồi.
Con kiểm tra lại đã đúng rồi Thầy (phải có R mới đúng)
Tạm thời bỏ qua công thức đi thầy, con cần VBA cho nhanh.

Thầy cho con xin cái msgbox khi có filter thì làm được ko Thầy? Và để chắc ăn là dữ liệu xuất ra không cần kiểm tra mà dùng luôn, nhờ Thầy cho con xin cái msg box để so sánh tổng từng cột tháng sau khi chạy code với sheet check. Nếu đúng thì hiện msg box "correct", nếu sai thì hiện "wrong" để con kiểm tra dữ liệu lại.
Con có thêm mảng cho P5 trong sheet 1%, cách làm y vậy nha thầy. À, mà con có thêm yếu tố tháng B1 để nó tự nhảy dữ liệu cho các tháng sau. Nên cột C6 là tháng edate(B1,-2), D6 = edate(B1,-1), E6 = B1

Và vì là VBA nên con nhờ Thầy giúp thêm bài đếm tổng nữa cho xong luôn báo cáo này (thật ra còn 1 yêu cầu nữa nhưng sau này con đăng bài sau).
Cách làm của file All:
1. Liệt kê (loại trùng nhưng không bỏ rỗng, không bỏ 0) toàn bộ Final EAN mà khác "DC" ở cột H.
2. Sắp xếp cột Total từ lagest to smallest
3. Tính % tỉ trọng ở cột % cont
4. Liệt kê số thứ tự cho 20 dòng đầu tiên

(Tượng tự làm cho P5)

Mục đích là con cần đếm hết các mã hàng mà công ty đang có nên dù không có bán trong 3 tháng qua vẫn đếm.

Con cám ơn Thầy nhiều ạ.
 

File đính kèm

Lần chỉnh sửa cuối:
Hic... tại cố làm lúc nửa đêm nó vậy đó Thầy, mắt quáng gà rồi.
Con kiểm tra lại đã đúng rồi Thầy (phải có R mới đúng)
Tạm thời bỏ qua công thức đi thầy, con cần VBA cho nhanh.

Thầy cho con xin cái msgbox khi có filter thì làm được ko Thầy? Và để chắc ăn là dữ liệu xuất ra không cần kiểm tra mà dùng luôn, nhờ Thầy cho con xin cái msg box để so sánh tổng từng cột tháng sau khi chạy code với sheet check. Nếu đúng thì hiện msg box "correct", nếu sai thì hiện "wrong" để con kiểm tra dữ liệu lại.
Con có thêm mảng cho P5 trong sheet 1%, cách làm y vậy nha thầy. À, mà con có thêm yếu tố tháng B1 để nó tự nhảy dữ liệu cho các tháng sau. Nên cột C6 là tháng edate(B1,-2), D6 = edate(B1,-1), E6 = B1

Và vì là VBA nên con nhờ Thầy giúp thêm bài đếm tổng nữa cho xong luôn báo cáo này (thật ra còn 1 yêu cầu nữa nhưng sau này con đăng bài sau).
Cách làm của file All:
1. Liệt kê (loại trùng nhưng không bỏ rỗng, không bỏ 0) toàn bộ Final EAN mà khác "DC" ở cột H.
2. Sắp xếp cột Total từ lagest to smallest
3. Tính % tỉ trọng ở cột % cont
4. Liệt kê số thứ tự cho 20 dòng đầu tiên

(Tượng tự làm cho P5)

Mục đích là con cần đếm hết các mã hàng mà công ty đang có nên dù không có bán trong 3 tháng qua vẫn đếm.

Con cám ơn Thầy nhiều ạ.
P2 hay P5 thì nhập vào B2 rồi bấm nút, sao phải làm 2 bảng?
Tháng thì cứ nhập vào B1, nó đã tự chỉnh rồi mà.
Check với số liệu có "1 đống" số lẻ, Excel dễ "chết" với cái đống này lắm. Mà sheet Check từ đâu có, không tin VBA mà phải tạo sheet Check để kiểm tra?
Bạn xem tạm file này, sheet ALL tính sau nếu chịu làm theo kiểu sheet "1%"
 

File đính kèm

P2 hay P5 thì nhập vào B2 rồi bấm nút, sao phải làm 2 bảng?
Tháng thì cứ nhập vào B1, nó đã tự chỉnh rồi mà.
Check với số liệu có "1 đống" số lẻ, Excel dễ "chết" với cái đống này lắm. Mà sheet Check từ đâu có, không tin VBA mà phải tạo sheet Check để kiểm tra?
Bạn xem tạm file này, sheet ALL tính sau nếu chịu làm theo kiểu sheet "1%"
Dạ, tốt quá rồi Thầy ơi.
Con lập ra 2 khu vực là vì con cần nhìn cùng lúc 2 data này đó Thầy. Vì cần phân tích so sánh đối chiếu này nọ nữa. Nhưng thôi, làm cách của Thầy cũng được.
Tại số này con chỉnh sửa tùm lum để làm file giả lập nên nó lẻ nhiều. Nhưng thực tế file con làm cũng có khi lẻ vậy đó Thầy, nên nếu Thầy cho làm tròn 3 số lẻ thì tốt ạ.
Cần check vì có khi dữ liệu gốc bị sai. Cái con gõ tay vào có thể là 1 dữ liệu con lấy từ hệ thống hoặc đã được kiểm tra chắc chắn.
Không phải sơ VBA sai mà sợ data gốc của con bị sai mà con không biết.
Với lại, file gõ tay thì con kiểm soát nhưng có khi làm báo cáo là 1 người khác, nên nếu VBA check giúp thì con yên tâm hơn.
Thầy triển khai theo hướng này giùm con ạ.
Mà vd nếu như con thay R bằng 1 từ khác chắc vẫn dùng được Thầy nhỉ?
Cám ơn Thầy nhiều, chúc Thầy ngày cuối tuần an lành ạ.
 
Dạ, tốt quá rồi Thầy ơi.
Con lập ra 2 khu vực là vì con cần nhìn cùng lúc 2 data này đó Thầy. Vì cần phân tích so sánh đối chiếu này nọ nữa. Nhưng thôi, làm cách của Thầy cũng được.
Tại số này con chỉnh sửa tùm lum để làm file giả lập nên nó lẻ nhiều. Nhưng thực tế file con làm cũng có khi lẻ vậy đó Thầy, nên nếu Thầy cho làm tròn 3 số lẻ thì tốt ạ.
Cần check vì có khi dữ liệu gốc bị sai. Cái con gõ tay vào có thể là 1 dữ liệu con lấy từ hệ thống hoặc đã được kiểm tra chắc chắn.
Không phải sơ VBA sai mà sợ data gốc của con bị sai mà con không biết.
Với lại, file gõ tay thì con kiểm soát nhưng có khi làm báo cáo là 1 người khác, nên nếu VBA check giúp thì con yên tâm hơn.
Thầy triển khai theo hướng này giùm con ạ.
Mà vd nếu như con thay R bằng 1 từ khác chắc vẫn dùng được Thầy nhỉ?
Cám ơn Thầy nhiều, chúc Thầy ngày cuối tuần an lành ạ.
Sheet All tính thế nào? Tính Average cả 3 tháng kể cả ô rỗng và ô bằng 0? Như vậy là lấy tổng chia cho 3, khác với sheet 1% ?
 
Muốn Round() 3 số lẻ thì xem file này, tùy chỉnh lại mấy số lẻ cho "vừa bụng"
 

File đính kèm

Web KT

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

Back
Top Bottom