Đếm số dữ liệu không trùng nhau kết hợp hàm subtotal

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

hvthinh77

Thành viên chính thức
Tham gia
16/4/09
Bài viết
57
Được thích
8
Chào mọi người,

Em có thắc mắc là trong quản lý kho, có nhiều pallets hàng, mỗi pallet có nhiều thùng hàng chất trên đó, trong đó có 1 thùng hàng có khi chứa 1 size giày, có khi chứa nhiều size giày khác nhau

Em muốn làm công thức đếm số thùng cho mỗi pallet kết hợp với hàm subtotal, chỉ đếm thùng không trùng ở cột A như hình, khi mình thay đổi vị trí cột E thì công thức luôn đúng.

Nhờ các anh chị hướng dẫn thêm ạ
 

File đính kèm

  • Dem gia tri khong trung cot A.jpg
    Dem gia tri khong trung cot A.jpg
    92.6 KB · Đọc: 52
Chào mọi người,

Em có thắc mắc là trong quản lý kho, có nhiều pallets hàng, mỗi pallet có nhiều thùng hàng chất trên đó, trong đó có 1 thùng hàng có khi chứa 1 size giày, có khi chứa nhiều size giày khác nhau

Em muốn làm công thức đếm số thùng cho mỗi pallet kết hợp với hàm subtotal, chỉ đếm thùng không trùng ở cột A như hình, khi mình thay đổi vị trí cột E thì công thức luôn đúng.

Nhờ các anh chị hướng dẫn thêm ạ
=COUNT(IF(RIGHT(UNIQUE(B2:B15&F2:F15),2)="A1",1))
bạn có thể thử công thức này để tính số thùng tại vị trí "A1"
 
=COUNT(IF(RIGHT(UNIQUE(B2:B15&F2:F15),2)="A1",1))
bạn có thể thử công thức này để tính số thùng tại vị trí "A1"
Cám ơn bạn giúp đỡ nè, nhưng mình hỏi thêm xíu là:
Mình có thể cho hàm chạy theo dạng tự động tính khi mình thay đổi vị trí A1 không bạn, ví dụ khi mình chọn A2 thì hàm tự động chạy chứ không cần phải thay đổi ở công thức từ A1 sang A2 á?!
 
Cám ơn bạn giúp đỡ nè, nhưng mình hỏi thêm xíu là:
Mình có thể cho hàm chạy theo dạng tự động tính khi mình thay đổi vị trí A1 không bạn, ví dụ khi mình chọn A2 thì hàm tự động chạy chứ không cần phải thay đổi ở công thức từ A1 sang A2 á?!
Sao không tự thử xem kết quả ra sao trước khi hỏi nhỉ.
 
Cám ơn bạn giúp đỡ nè, nhưng mình hỏi thêm xíu là:
Mình có thể cho hàm chạy theo dạng tự động tính khi mình thay đổi vị trí A1 không bạn, ví dụ khi mình chọn A2 thì hàm tự động chạy chứ không cần phải thay đổi ở công thức từ A1 sang A2 á?!
Bạn bỏ ngoặc kép đi thì nó sẽ lấy giá trị của cell A1 thay vì giá trị text trong ngoặc kép, khi đó bạn kéo hàm thì sẽ thay đổi thôi
 
Sao không tự thử xem kết quả ra sao trước khi hỏi nhỉ.
Mình gửi bạn lại hình, trong hình có ghi rõ yêu cầu ở bên phải của hình và file excel mẫu, nhờ bạn hỗ trợ, vì mình làm không được. Nhờ bạn hỗ trợ
Bài đã được tự động gộp:

Bạn bỏ ngoặc kép đi thì nó sẽ lấy giá trị của cell A1 thay vì giá trị text trong ngoặc kép, khi đó bạn kéo hàm thì sẽ thay đổi thôi
Mình gửi bạn lại hình, trong hình có ghi rõ yêu cầu ở bên phải của hình và file excel mẫu, nhờ bạn hỗ trợ, vì mình làm không được
 

File đính kèm

  • z5751944561262_cbcb69fed8bd6c40d402b6ba7ad14b66.jpg
    z5751944561262_cbcb69fed8bd6c40d402b6ba7ad14b66.jpg
    114.9 KB · Đọc: 17
  • Ham dem so khong trung theo gia tri loc.xlsx
    13.1 KB · Đọc: 5
  • z5751944561262_cbcb69fed8bd6c40d402b6ba7ad14b66.jpg
    z5751944561262_cbcb69fed8bd6c40d402b6ba7ad14b66.jpg
    114.9 KB · Đọc: 16
  • Ham dem so khong trung theo gia tri loc.xlsx
    13.1 KB · Đọc: 8
Mình gửi bạn lại hình, trong hình có ghi rõ yêu cầu ở bên phải của hình và file excel mẫu, nhờ bạn hỗ trợ, vì mình làm không được. Nhờ bạn hỗ trợ
Bài đã được tự động gộp:


Mình gửi bạn lại hình, trong hình có ghi rõ yêu cầu ở bên phải của hình và file excel mẫu, nhờ bạn hỗ trợ, vì mình làm không được
Có 2 cách:

1. Không dùng cột phụ:

=SUMPRODUCT(SUBTOTAL(103,OFFSET(A4,ROW(A5:A29)-ROW(A4),0,1,1))* (A5:A29<>A4:A28))

2. Dùng cột I làm cột phụ:

Trong I5 nhập công thức:

=SUBTOTAL(103,A5)

Và trong E2:

=SUMPRODUCT(I5:I29*(A5:A29<>A4:A28))
 
Có 2 cách:

1. Không dùng cột phụ:

=SUMPRODUCT(SUBTOTAL(103,OFFSET(A4,ROW(A5:A29)-ROW(A4),0,1,1))* (A5:A29<>A4:A28))

2. Dùng cột I làm cột phụ:

Trong I5 nhập công thức:

=SUBTOTAL(103,A5)

Và trong E2:

=SUMPRODUCT(I5:I29*(A5:A29<>A4:A28))
Ok thank bạn nha, mình làm theo cách 1 ra đúng rồi, để sử dụng thêm thời gian nữa xem có trường hợp nào ngoại lệ không, hiện tại thì ổn lắm rồi
Chân thành cảm ơn nhiều
 
Ok thank bạn nha, mình làm theo cách 1 ra đúng rồi, để sử dụng thêm thời gian nữa xem có trường hợp nào ngoại lệ không, hiện tại thì ổn lắm rồi
Chân thành cảm ơn nhiều
Mình thấy mục đích của bạn là đếm số thùng ở từng vị trí (pallet) đúng ko?
Do câu đầu của bài #1 nên mình hiểu là khi bạn dời thùng qua vị trí khác, thì lúc đó, bạn sẽ biết được ở mỗi vị trí có tổng bao nhiêu mã thùng. (Do 1 thùng được đánh 1 mã thùng nên số thùng = số mã thùng = 1). Mình hiểu vậy đúng không?
Hàm bài #7 : khi bạn filter cột E, E2 mới nhảy số đúng với vị trí, mà làm vậy hổng lẽ cứ coi từng pallet chi cực. Nhờ luôn công thức tính số thùng từng vị trí luôn, lúc đó tự động mỗi dòng là tổng mã thùng của vị trí đó luôn rồi. Bạn thay đổi vị trí, sửa tay vị trí thì biết ngay số thùng của vị trí đó luôn, khỏi làm filter.
 
Lần chỉnh sửa cuối:
Có 2 cách:

1. Không dùng cột phụ:

=SUMPRODUCT(SUBTOTAL(103,OFFSET(A4,ROW(A5:A29)-ROW(A4),0,1,1))* (A5:A29<>A4:A28))

2. Dùng cột I làm cột phụ:

Trong I5 nhập công thức:

=SUBTOTAL(103,A5)

Và trong E2:

=SUMPRODUCT(I5:I29*(A5:A29<>A4:A28))
Gửi chủ thớt: Mình mượn dữ liệu để nhờ thêm nội dung khác với chủ thớt, bạn đừng lẫn lộn nha.

Nhờ bác giúp mở rộng công thức để sau khi xác định tổng mã thùng ở từng vị trí, thì đánh số giảm dần cho từng mã thùng, để hiểu là cùng mã thùng, cùng vị trí thì nó đang là thùng số bao nhiêu trên tổng, mình gửi hình kết quả đính kèm
1724337157762.png
 
Mình thấy mục đích của bạn là đếm số thùng ở từng vị trí (pallet) đúng ko?
Do câu đầu của bài #1 nên mình hiểu là khi bạn dời thùng qua vị trí khác, thì lúc đó, bạn sẽ biết được ở mỗi vị trí có tổng bao nhiêu mã thùng. (Do 1 thùng được đánh 1 mã thùng nên số thùng = số mã thùng = 1). Mình hiểu vậy đúng không?
Hàm bài #7 : khi bạn filter cột E, E2 mới nhảy số đúng với vị trí, mà làm vậy hổng lẽ cứ coi từng pallet chi cực. Nhờ luôn công thức tính số thùng từng vị trí luôn, lúc đó tự động mỗi dòng là tổng mã thùng của vị trí đó luôn rồi. Bạn thay đổi vị trí, sửa tay vị trí thì biết ngay số thùng của vị trí đó luôn, khỏi làm filter.
Có 2 cách:

1. Không dùng cột phụ:

=SUMPRODUCT(SUBTOTAL(103,OFFSET(A4,ROW(A5:A29)-ROW(A4),0,1,1))* (A5:A29<>A4:A28))

2. Dùng cột I làm cột phụ:

Trong I5 nhập công thức:

=SUBTOTAL(103,A5)

Và trong E2:

=SUMPRODUCT(I5:I29*(A5:A29<>A4:A28))

Có 2 cách:

1. Không dùng cột phụ:

=SUMPRODUCT(SUBTOTAL(103,OFFSET(A4,ROW(A5:A29)-ROW(A4),0,1,1))* (A5:A29<>A4:A28))

2. Dùng cột I làm cột phụ:

Trong I5 nhập công thức:

=SUBTOTAL(103,A5)

Và trong E2:

=SUMPRODUCT(I5:I29*(A5:A29<>A4:A28))
Mình làm theo cách 1 của bạn, mình làm ổn nhưng gần đây mình thấy có 1 số vị trí khi lọc thì công thức ra không đúng (dư hoặc thiếu 1 thùng). Nhờ bạn xem hình và hỗ trợ giúp mình với, nếu được đúng luôn hết thì tuyệt vời để công nhân đỡ mất công đếm và kiểm lại số thùng. Mình gửi file excel và hình đính kèm nhé!
Bài đã được tự động gộp:

Mình thấy mục đích của bạn là đếm số thùng ở từng vị trí (pallet) đúng ko?
Do câu đầu của bài #1 nên mình hiểu là khi bạn dời thùng qua vị trí khác, thì lúc đó, bạn sẽ biết được ở mỗi vị trí có tổng bao nhiêu mã thùng. (Do 1 thùng được đánh 1 mã thùng nên số thùng = số mã thùng = 1). Mình hiểu vậy đúng không?
Hàm bài #7 : khi bạn filter cột E, E2 mới nhảy số đúng với vị trí, mà làm vậy hổng lẽ cứ coi từng pallet chi cực. Nhờ luôn công thức tính số thùng từng vị trí luôn, lúc đó tự động mỗi dòng là tổng mã thùng của vị trí đó luôn rồi. Bạn thay đổi vị trí, sửa tay vị trí thì biết ngay số thùng của vị trí đó luôn, khỏi làm filter.
Cơ bản là mình muốn đếm số thùng ở mỗi vị trí, do mỗi hàng là 1 size, có thùng thì 1 size là 1 hàng, nhưng có thùng chứa nhiều size là nhiều hàng, nhưng khi đếm chỉ đếm 1 thùng thôi.
Mình dùng cách của bạn Phuocam thì thấy ổn đúng với đa số, nhưng gần đây có vài vị trí bị lỗi sai lệch hơn hoặc ít hơn 1 thùng, mình không biết cách sửa, nếu bạn biết có thể hỗ trợ giùm mình để công nhân đỡ vất vả đếm thùng cho đúng ạ.
Mình gửi kèm file và hình ảnh để bạn tham khảo nha

 

File đính kèm

  • L107.jpg
    L107.jpg
    137.8 KB · Đọc: 6
  • L52.jpg
    L52.jpg
    107.9 KB · Đọc: 6
  • 20240824 Surplus quantity v1.xlsx
    5.8 MB · Đọc: 1
  • L52.jpg
    L52.jpg
    107.9 KB · Đọc: 6
  • L107.jpg
    L107.jpg
    137.8 KB · Đọc: 10
  • 20240824 Surplus quantity v1.xlsx
    5.8 MB · Đọc: 3
Mình làm theo cách 1 của bạn, mình làm ổn nhưng gần đây mình thấy có 1 số vị trí khi lọc thì công thức ra không đúng (dư hoặc thiếu 1 thùng). Nhờ bạn xem hình và hỗ trợ giúp mình với, nếu được đúng luôn hết thì tuyệt vời để công nhân đỡ mất công đếm và kiểm lại số thùng. Mình gửi file excel và hình đính kèm nhé!
Thử vầy xem sao: ô E1
Mã:
=COUNT(1/(MATCH(A5:A7000,IF(SUBTOTAL(103,OFFSET(A4,ROW(1:7000),)),A5:A7000),)=ROW(1:7000)))
Kết thúc bằng Ctrl+Shift+Enter.

Vì dùng mảng để tính toán, vã lại dùng offset(), nên khi dòng dữ liệu lớn hơn 1000 dòng, nó sẽ làm cho máy bạn chạy chậm. Vì vậy, bạn nên hạn chế số dòng cho phù hợp, vd: dòng dữ liệu cuối của bạn là 6895, thì tôi giới hạn dòng lớn hơn là 7000 trong công thức trên.

Thân
 

File đính kèm

  • 20240824 Surplus quantity v1.xlsx
    5.7 MB · Đọc: 2
Mình dùng cách của bạn Phuocam thì thấy ổn đúng với đa số, nhưng gần đây có vài vị trí bị lỗi sai lệch hơn hoặc ít hơn 1 thùng, mình không biết cách sửa, nếu bạn biết có thể hỗ trợ giùm mình để công nhân đỡ vất vả đếm thùng cho đúng ạ.
Mình gửi kèm file và hình ảnh để bạn tham khảo nha

1. Vì Thùng S1021 có 2 nhãn là GEOX và ROLLING SOFT cách xa nhau nên nó đếm là 2, Khắc phục bằng cách Sort lại cột A.

2." hoặc ít hơn 1 thùng" =>chưa test.
 
Thử vầy xem sao: ô E1
Mã:
=COUNT(1/(MATCH(A5:A7000,IF(SUBTOTAL(103,OFFSET(A4,ROW(1:7000),)),A5:A7000),)=ROW(1:7000)))
Kết thúc bằng Ctrl+Shift+Enter.

Vì dùng mảng để tính toán, vã lại dùng offset(), nên khi dòng dữ liệu lớn hơn 1000 dòng, nó sẽ làm cho máy bạn chạy chậm. Vì vậy, bạn nên hạn chế số dòng cho phù hợp, vd: dòng dữ liệu cuối của bạn là 6895, thì tôi giới hạn dòng lớn hơn là 7000 trong công thức trên.

Thân
Uhm công thức mới của bạn chạy 2 pallet sai kia thành đúng rồi, mình sẽ để ý thêm và có gì phản hồi thêm cho bạn nha
Dòng thì mình vẫn để lên 8000 vì còn nhập thêm nhiều, nhưng cám ơn bạn chỉ cho mình vì mình cũng k biết sao dữ liệu chạy chậm hi.
Cám ơn bạn rất nhiều, chúc bạn có kỳ nghỉ lễ vui nha
Bài đã được tự động gộp:

1. Vì Thùng S1021 có 2 nhãn là GEOX và ROLLING SOFT cách xa nhau nên nó đếm là 2, Khắc phục bằng cách Sort lại cột A.

2." hoặc ít hơn 1 thùng" =>chưa test.
Hihi cám ơn bạn nè, mình dùng cách của bạn Phan Thế Hiệp thấy cũng chính xác rồi, có thông tin gì mình phản hồi sau nha!
 
Web KT

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

Back
Top Bottom