Thống kê ra các dữ liệu khác nhau giữa các sheet (4 người xem)

Liên hệ QC

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

bosscomhcvp

Thành viên mới
Tham gia
24/8/18
Bài viết
21
Được thích
0
Chào các anh/chị,
Anh/chị nào gỡ rối giúp em bài toán này ạ:
Em có nhiều danh sách khách hàng được update theo ngày, tuy nhiên danh sách sau có thể bị mất hoặc thiếu dữ liệu khách hàng so với danh sách trước. Em cần thống kê các dữ liệu khách hàng có trong danh sách ngày hôm trước mà không có trong danh sách ngày hôm sau, để xem đã bị mất khách hàng nào. Danh sách dữ liệu khác nhau được đưa ra 2 bảng:
1. Bảng danh sách các dữ liệu có trong DS 1 mà không có trong DS 2, có trong DS 2 mà không có trong DS 3, ... để so sánh được danh sách khách hàng qua các ngày có bị thay đổi không.
2. Bảng danh sách các dữ liệu có trong sheet này nhưng các sheet khác không có.
Em đính kèm file dữ liệu.
Anh/ chị chỉ giáo giùm em ạ.
Em cảm ơn anh/chị.
 

File đính kèm

Chào các anh/chị,
Anh/chị nào gỡ rối giúp em bài toán này ạ:
Em có nhiều danh sách khách hàng được update theo ngày, tuy nhiên danh sách sau có thể bị mất hoặc thiếu dữ liệu khách hàng so với danh sách trước. Em cần thống kê các dữ liệu khách hàng có trong danh sách ngày hôm trước mà không có trong danh sách ngày hôm sau, để xem đã bị mất khách hàng nào. Danh sách dữ liệu khác nhau được đưa ra 2 bảng:
1. Bảng danh sách các dữ liệu có trong DS 1 mà không có trong DS 2, có trong DS 2 mà không có trong DS 3, ... để so sánh được danh sách khách hàng qua các ngày có bị thay đổi không.
2. Bảng danh sách các dữ liệu có trong sheet này nhưng các sheet khác không có.
Em đính kèm file dữ liệu.
Anh/ chị chỉ giáo giùm em ạ.
Em cảm ơn anh/chị.
Thử:
Mã:
C6=T(OFFSET(INDIRECT(B$5&"!B1"),AGGREGATE(15,6,ROW($1:$100)/ISERROR(MATCH(INDIRECT(B$5&"!B2:B100"),INDIRECT(C$5&"!B2:B100"),)),ROW($A1)),))
Enter, fill qua phải, rồi copy cả hàng xuống dưới.

Thân
 

File đính kèm

Chào các anh/chị,
Anh/chị nào gỡ rối giúp em bài toán này ạ:
Em có nhiều danh sách khách hàng được update theo ngày, tuy nhiên danh sách sau có thể bị mất hoặc thiếu dữ liệu khách hàng so với danh sách trước. Em cần thống kê các dữ liệu khách hàng có trong danh sách ngày hôm trước mà không có trong danh sách ngày hôm sau, để xem đã bị mất khách hàng nào. Danh sách dữ liệu khác nhau được đưa ra 2 bảng:
1. Bảng danh sách các dữ liệu có trong DS 1 mà không có trong DS 2, có trong DS 2 mà không có trong DS 3, ... để so sánh được danh sách khách hàng qua các ngày có bị thay đổi không.
2. Bảng danh sách các dữ liệu có trong sheet này nhưng các sheet khác không có.
Em đính kèm file dữ liệu.
Anh/ chị chỉ giáo giùm em ạ.
Em cảm ơn anh/chị.
Góp thêm công thức áp dụng cho Excel 2003,2007, nhấn Ctrl+Shift+Enter nhé
Mã:
=IFERROR(T(INDEX(INDIRECT("'"&B$5&"'!B2:B100"),SMALL(IFERROR(ROW($1:$100)/NOT(COUNTIF(INDIRECT("'"&C$5&"'!B2:B100"),INDIRECT("'"&B$5&"'!B2:B100"))),""),ROW($A1)))),"")
 
Em cảm ơn mọi người ạ.
Em còn 1 bảng nữa, là sheet thứ 2, trong DS1 và DS10 có 2 khách hàng mà các DS khác không có, em muốn liệt kê 2 khách hàng đó ra ạ.
Các bác chỉ giáo giùm em ạ.
 
Em cảm ơn mọi người ạ.
Em còn 1 bảng nữa, là sheet thứ 2, trong DS1 và DS10 có 2 khách hàng mà các DS khác không có, em muốn liệt kê 2 khách hàng đó ra ạ.
Các bác chỉ giáo giùm em ạ.
Giải pháp:
  • Dùng cột phụ gom các mã của các sheet về chung 1 bảng.
  • Đếm mã khách nào chỉ phát sinh 1 lần.
1/ Sheet "TH":
Mã:
A6=IFERROR(IF(COUNTIF($A$5:A5,A5)=OFFSET($B$4,,MATCH(A5,$C$5:$M$5,)),INDEX($C$5:$M$5,MATCH(A5,$C$5:$M$5,)+1),A5),T($C5))
B6=IFERROR(INDEX(INDIRECT(A6&"!B2:B1000"),COUNTIF($A$6:$A6,$A6)),"")
2/ Sheet "KH Riêng biệt":
Mã:
A7=T(LOOKUP(2,1/(C7=TH!$B$6:$B$1000),TH!$A$6:$A$1000))
C7=IFERROR(OFFSET(TH!$B$5,AGGREGATE(15,6,ROW($1:$1000)/(COUNTIFS(TH!$B$6:$B$107,TH!$B$6:$B$107)=1),ROW(B1)),),"")
E7=VLOOKUP($C7,INDIRECT($A7&"!B2:AG1000"),MATCH(E$6,INDIRECT($A7&"!B1:AG1"),),)
Các công thức khác xem file kèm.

Thân
 

File đính kèm

Giải pháp:
  • Dùng cột phụ gom các mã của các sheet về chung 1 bảng.
  • Đếm mã khách nào chỉ phát sinh 1 lần.
1/ Sheet "TH":
Mã:
A6=IFERROR(IF(COUNTIF($A$5:A5,A5)=OFFSET($B$4,,MATCH(A5,$C$5:$M$5,)),INDEX($C$5:$M$5,MATCH(A5,$C$5:$M$5,)+1),A5),T($C5))
B6=IFERROR(INDEX(INDIRECT(A6&"!B2:B1000"),COUNTIF($A$6:$A6,$A6)),"")
2/ Sheet "KH Riêng biệt":
Mã:
A7=T(LOOKUP(2,1/(C7=TH!$B$6:$B$1000),TH!$A$6:$A$1000))
C7=IFERROR(OFFSET(TH!$B$5,AGGREGATE(15,6,ROW($1:$1000)/(COUNTIFS(TH!$B$6:$B$107,TH!$B$6:$B$107)=1),ROW(B1)),),"")
E7=VLOOKUP($C7,INDIRECT($A7&"!B2:AG1000"),MATCH(E$6,INDIRECT($A7&"!B1:AG1"),),)
Các công thức khác xem file kèm.

Thân
Cảm ơn bạn nhiều ạ. đúng ý mình đang cần rồi ạ.
Many thanks!
 

File đính kèm

Lại là em đây ạ. Em add dữ liệu vào thì toàn bị báo lỗi. Các bác ra tay giúp đỡ em lần nữa ạ :(((
Dữ liệu bạn quá lớn, 1 sheet hơn 1.000 dòng, 10 sheet sẽ có hơn 10.000 dòng, thì cách xử lý bằng công thức sẽ không phù hợp, nó sẽ làm cho máy bạn "quay mòng mòng".

Cách tốt nhất bạn nên tạo chủ đề mới tại box "Lập trình với Excel" nhờ anh em viết Code mới phù hợp yêu cầu của bạn.

Thân
 
Dữ liệu bạn quá lớn, 1 sheet hơn 1.000 dòng, 10 sheet sẽ có hơn 10.000 dòng, thì cách xử lý bằng công thức sẽ không phù hợp, nó sẽ làm cho máy bạn "quay mòng mòng".

Cách tốt nhất bạn nên tạo chủ đề mới tại box "Lập trình với Excel" nhờ anh em viết Code mới phù hợp yêu cầu của bạn.

Thân
Cảm ơn bạn ^^
 
Web KT

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

Back
Top Bottom