thaihung85
Thành viên chính thức
- Tham gia
- 24/11/22
- Bài viết
- 50
- Được thích
- 12
File đính kèm
Lần chỉnh sửa cuối:
=SUMPRODUCT(1/(COUNTIFS($A$6:$A$192,$A$6:$A$192,$B$6:$B$192,$B$6:$B$192))*(E3=$C$6:$C$192)*(SUBTOTAL(103,OFFSET($C$6,ROW($C$6:$C$192)-6,0,1))))
=SUMPRODUCT(1/(COUNTIFS($A$6:$A$192,$A$6:$A$192,$B$6:$B$192,$B$6:$B$192))*(SUBTOTAL(103,OFFSET($C$6,ROW($C$6:$C$192)-6,0,1))))
Mình thử hình như đếm luôn các tên sách bị trùng và thiếu 1 cuốn hay sao á bạn. Xem lại giúp mình với?Sử dụng công thức này D197 : Kéo xuống D198
Mã:=SUMPRODUCT(1/(COUNTIFS($A$6:$A$192,$A$6:$A$192,$B$6:$B$192,$B$6:$B$192))*(E3=$C$6:$C$192)*(SUBTOTAL(103,OFFSET($C$6,ROW($C$6:$C$192)-6,0,1))))
B193 cũng có thể thay bằng công thức này :
Mã:=SUMPRODUCT(1/(COUNTIFS($A$6:$A$192,$A$6:$A$192,$B$6:$B$192,$B$6:$B$192))*(SUBTOTAL(103,OFFSET($C$6,ROW($C$6:$C$192)-6,0,1))))
Đề ra vẫn có chút khó hiểu, cột A để filter thì không rõ là nếu filter 2 loại khác nhau (giả sử chỉ 2 dòng), nhưng 2 dòng này lại giống nhau thì không biết sẽ tính là 1 hay 2.Công thức sửa chỗ E3 là C197 nhé :
=SUMPRODUCT(1/(COUNTIFS($A$6:$A$192,$A$6:$A$192,$B$6:$B$192,$B$6:$B$192))*(C197=$C$6:$C$192)*(SUBTOTAL(103,OFFSET($C$6,ROW($C$6:$C$192)-6,0,1))))
Bạn xem lại giúp mình với ạ. Ở cột B - tên sách có nhiều dòng giống nhau nên ở ô B193 là đếm số tên sách (tên nào bị trùng chỉ đếm 1 lần).File bạn có 2 dòng nhập giống hệt nhau, nên khi Remove Duplicates nó sẽ còn 186 thôi.
Đây nhé :
View attachment 291061
Công thức sửa chỗ E3 là C197 nhé :
=SUMPRODUCT(1/(COUNTIFS($A$6:$A$192,$A$6:$A$192,$B$6:$B$192,$B$6:$B$192))*(C197=$C$6:$C$192)*(SUBTOTAL(103,OFFSET($C$6,ROW($C$6:$C$192)-6,0,1))))
Mình đang cần tính là 1 ạ.Đề ra vẫn có chút khó hiểu, cột A để filter thì không rõ là nếu filter 2 loại khác nhau (giả sử chỉ 2 dòng), nhưng 2 dòng này lại giống nhau thì không biết sẽ tính là 1 hay 2.
Đáp án bạn đưa ra theo mình nghĩ bạn đang hiểu tính là 2, trong countifs vẫn thiếu 1 điều kiện nữa
Bạn thêm 1 cột phụMình đang cần tính là 1 ạ.
=SUM(IF($C$6:$C$192=C197,1/COUNTIFS($C$6:$C$192,C197,$A$6:$A$192,$A$6:$A$192,$B$6:$B$192,$B$6:$B$192)))
Filter cột A dữ liệu có nhảy theo đâu bác.Đây là dạng "Đếm giá trị duy nhất từ 2 cột theo 1 điều kiện"
Kết cấu như sau:
D197:
Ctrl-Shift-Enter nếu dùng Excel phiên bản cũ từ 2016Mã:=SUM(IF($C$6:$C$192=C197,1/COUNTIFS($C$6:$C$192,C197,$A$6:$A$192,$A$6:$A$192,$B$6:$B$192,$B$6:$B$192)))
Copy xuống
Trong file đính kèm, cột D và E dùng để test, cũng có thể dùng để filter lấy ra danh sách từng loại.
Có cách nào không phải chèn thêm cột phụ không ạ? File mình đang rối thế này rồi nè bạnBạn thêm 1 cột phụ
Dạ đếm giá trị duy nhất cột B theo điều kiện ĐL hoặc PG ở cột C, dùng Filter cột A ạ.Đây là dạng "Đếm giá trị duy nhất từ 2 cột theo 1 điều kiện"
Kết cấu như sau:
D197:
Ctrl-Shift-Enter nếu dùng Excel phiên bản cũ từ 2016Mã:=SUM(IF($C$6:$C$192=C197,1/COUNTIFS($C$6:$C$192,C197,$A$6:$A$192,$A$6:$A$192,$B$6:$B$192,$B$6:$B$192)))
Copy xuống
Trong file đính kèm, cột D và E dùng để test, cũng có thể dùng để filter lấy ra danh sách từng loại.
Filter cột D (hoặc E) để lấy DS mỗi loại.Filter cột A dữ liệu có nhảy theo đâu bác.
Cột phụ này ý nghĩa là gì dạ bạn?Bạn thêm 1 cột phụ
=LET(TS,$B$6:$B$192,X,(SUBTOTAL(3,OFFSET($B$6,ROW(TS)-MIN(ROW(TS)),0)))*(MATCH(TS,TS,0)),Y,FREQUENCY(X,X),SUM(IF((Y=1)+(Y=2),1,0)))
=LET(TS,$B$6:$B$192,X,(SUBTOTAL(3,OFFSET($B$6,ROW(TS)-MIN(ROW(TS)),0)))*(MATCH(TS,TS,0)),Y,FREQUENCY(X,X),SUM(IFERROR(IF((Y=1)+(Y=2),1,0)*IF($C$6:$C$192=$C197,1,0),"")))
Bạn có dùng subtotal rồi mà nhỉ, ý nghĩa như nhau thôi, nó chỉ tính những cột không ẩn (bởi vì cột bị ẩn đã trở thành 0)Cột phụ này ý nghĩa là gì dạ bạn?
Sao mình áp công thức vô bảng mà nó không hiển thị kết quả? Bạn xem lại giúp mình với ạ.Nếu không muốn cột phụ thì thử hàm này nhé bạn.
Cell B193
Mã:=LET(TS,$B$6:$B$192,X,(SUBTOTAL(3,OFFSET($B$6,ROW(TS)-MIN(ROW(TS)),0)))*(MATCH(TS,TS,0)),Y,FREQUENCY(X,X),SUM(IF((Y=1)+(Y=2),1,0)))
Cell D197
copy xuống D198Mã:=LET(TS,$B$6:$B$192,X,(SUBTOTAL(3,OFFSET($B$6,ROW(TS)-MIN(ROW(TS)),0)))*(MATCH(TS,TS,0)),Y,FREQUENCY(X,X),SUM(IFERROR(IF((Y=1)+(Y=2),1,0)*IF($C$6:$C$192=$C197,1,0),"")))
Bài đã được tự động gộp:
Bạn có dùng subtotal rồi mà nhỉ, ý nghĩa như nhau thôi, nó chỉ tính những cột không ẩn (bởi vì cột bị ẩn đã trở thành 0)
Dùng phiên bản cũ thì nó sẽ dài dòng hơn XÍUSao mình áp công thức vô bảng mà nó không hiển thị kết quả? Bạn xem lại giúp mình với ạ.
Cảm ơn bạn nhiều lắm!
=SUM(IF((FREQUENCY((SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)),(SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)))=1)+(FREQUENCY((SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)),(SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)))=2),1,0))
=SUM(IFERROR(IF((FREQUENCY((SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)),(SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)))=1)+(FREQUENCY((SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)),(SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)))=2),1,0)*IF($C$6:$C$192=$C197,1,0),""))
Mình đã áp dụng và ra đúng kết quả, nhưng với những tên sách lặp lại nhiều hơn 2 lần sẽ bị bỏ sót.Dùng phiên bản cũ thì nó sẽ dài dòng hơn XÍU
B193
Mã:=SUM(IF((FREQUENCY((SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)),(SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)))=1)+(FREQUENCY((SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)),(SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)))=2),1,0))
D197
Copy xuống D198Mã:=SUM(IFERROR(IF((FREQUENCY((SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)),(SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)))=1)+(FREQUENCY((SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)),(SUBTOTAL(3,OFFSET($B$6,ROW($B$6:$B$192)-MIN(ROW($B$6:$B$192)),0)))*(MATCH($B$6:$B$192,$B$6:$B$192,0)))=2),1,0)*IF($C$6:$C$192=$C197,1,0),""))
Bạn nên tạo name cho dữ liệu để đỡ phải mất công sức về sau nếu muốn sửa tham chiếu.
Mình thử rồi, có thấy bị sót đâu, bạn có thể đưa ví dụ lên không?Mình đã áp dụng và ra đúng kết quả, nhưng với những tên sách lặp lại nhiều hơn 2 lần sẽ bị bỏ sót.
Cảm ơn bạn nhiều nhé!
À, trong file trên có tổng số 146 tên sách, ví dụ cuốn "ĐẠO ĐỨC 4" đang lặp lại 2 lần, nếu bạn cho lập lại thêm lần nữa thì tổng số tên sách còn 145 thôi. Cho cuốn khác lặp lại trên 2 lần cũng mất tiếp.Mình thử rồi, có thấy bị sót đâu, bạn có thể đưa ví dụ lên không?
Thế không phải yêu cầu ban đầu là chỉ đếm 1 lần thôi sao ? Ví dụ có 10 sách, nếu có 1 sách lặp lại 1 lần thì tổng sách là 9, nếu lặp lại 2 lần thì tổng sách là 8, vì yêu cầu của bạn là sách lặp lại chỉ được tính 1 lần. Hay tôi vẫn chưa hiểu yêu cầu của bạn là gì ?À, trong file trên có tổng số 146 tên sách, ví dụ cuốn "ĐẠO ĐỨC 4" đang lặp lại 2 lần, nếu bạn cho lập lại thêm lần nữa thì tổng số tên sách còn 145 thôi. Cho cuốn khác lặp lại trên 2 lần cũng mất tiếp.
Yêu cầu là các tên sách trùng nhau (có lặp lại bao nhiêu lần đi nữa) thì cũng chỉ đếm 1 lần thôi bạn.Thế không phải yêu cầu ban đầu là chỉ đếm 1 lần thôi sao ? Ví dụ có 10 sách, nếu có 1 sách lặp lại 1 lần thì tổng sách là 9, nếu lặp lại 2 lần thì tổng sách là 8, vì yêu cầu của bạn là sách lặp lại chỉ được tính 1 lần. Hay tôi vẫn chưa hiểu yêu cầu của bạn là gì ?