Tô màu dữ liệu trùng theo ví dụ minh họa (3 người xem)

Liên hệ QC

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

Xin cảm ơn Thầy Ba Tê và anh huuthang_bd đã giúp đỡ...
Cách của Thầy và anh em đều áp dụng thành công được ạ.
Tuy nhiên do cấu trúc CSDL cần phát sinh thêm 2 cột (a,b) nữa như trong file đính kèm ạ...
Nhưng dữ liệu trong 2 cột (a,b) này của các bảng yêu cầu phải khác nhau, còn dữ liệu trong các cột (1,2,3,4,5) yêu cầu phải giống nhau thì mới tô màu ạ.
Mong Thầy và Anh cùng mọi người trong GPE nghiên cứu và giúp đỡ thêm về trường hợp này ạ.
Em xin cảm ơn.


Bạn chưa thống nhất chỗ này, trong lời giải thích của bạn là "và" : cả 2 cột phải khác nhau, nhưng trong file bạn lại thể hiện là "hoặc": chỉ cần 1 trong 2 cột khác nhau là được. Cuối cùng cái nào mới là cái bạn cần?
 
Nếu file của bạn có thể gộp những cột yêu cầu giống về chung, những cột yêu cầu khác về chung, thì làm theo công thức này, công thức này là hoàn toàn copy của a huuthang_bd và thêm chút điều kiện:

Làm theo kiểu "hoặc" trong file của bạn:

=AND(COUNTA($J8:$P8)>0,MAX(MMULT(--($L8:$P8=$D$8:$H$22),TRANSPOSE(SIGN(COLUMN($L8:$P8))))+MMULT(--($J8:$K8<>$B$8:$C$22),TRANSPOSE(SIGN(COLUMN($J8:$K8)))))>COLUMNS($L8:$P8))

Còn nếu bạn muốn làm theo kiểu "và" thì dùng công thức này:

=AND(COUNTA($J8:$P8)>0,MAX(MMULT(--($L8:$P8=$D$8:$H$22),TRANSPOSE(SIGN(COLUMN($L8:$P8))))+MMULT(--($J8:$K8<>$B$8:$C$22),TRANSPOSE(SIGN(COLUMN($J8:$K8)))))=COLUMNS($j8:$P8))

Còn format cho các cột xen kẽ đúng như file của bạn thì mình chưa nghĩ ra...
 

File đính kèm

Nếu file của bạn có thể gộp những cột yêu cầu giống về chung, những cột yêu cầu khác về chung, thì làm theo công thức này, công thức này là hoàn toàn copy của a huuthang_bd và thêm chút điều kiện:

Làm theo kiểu "hoặc" trong file của bạn:

=AND(COUNTA($J8:$P8)>0,MAX(MMULT(--($L8:$P8=$D$8:$H$22),TRANSPOSE(SIGN(COLUMN($L8:$P8))))+MMULT(--($J8:$K8<>$B$8:$C$22),TRANSPOSE(SIGN(COLUMN($J8:$K8)))))>COLUMNS($L8:$P8))

Còn nếu bạn muốn làm theo kiểu "và" thì dùng công thức này:

=AND(COUNTA($J8:$P8)>0,MAX(MMULT(--($L8:$P8=$D$8:$H$22),TRANSPOSE(SIGN(COLUMN($L8:$P8))))+MMULT(--($J8:$K8<>$B$8:$C$22),TRANSPOSE(SIGN(COLUMN($J8:$K8)))))=COLUMNS($j8:$P8))

Còn format cho các cột xen kẽ đúng như file của bạn thì mình chưa nghĩ ra...
Công thức với điều kiện "hoặc" chưa được nha bạn. Bạn chưa tính tới trường hợp này: a và b cùng khác, 1-5 có 4 giống và 1 khác
 
Công thức với điều kiện "hoặc" chưa được nha bạn. Bạn chưa tính tới trường hợp này: a và b cùng khác, 1-5 có 4 giống và 1 khác

... cảm ơn a, 1 thiếu sót nghiêm trọng, em xin sửa lại như sau với điều kiện "hoặc":

=AND(COUNTA($J8:$P8)>0,MAX(((MMULT(--($L8:$P8=$D$8:$H$22),TRANSPOSE(SIGN(COLUMN($L8:$P8))))=COLUMNS($L8:$P8))+(MMULT(--($J8:$K8<>$B$8:$C$22),TRANSPOSE(SIGN(COLUMN($J8:$K8))))>=1)))=2)
 
Lần chỉnh sửa cuối:
... cảm ơn a, 1 thiếu sót nghiêm trọng, em xin sửa lại như sau với điều kiện "hoặc":

=AND(COUNTA($J8:$P8)>0,MAX(((MMULT(--($L8:$P8=$D$8:$H$22),TRANSPOSE(SIGN(COLUMN($L8:$P8))))=COLUMNS($L8:$P8))+(MMULT(--($J8:$K8<>$B$8:$C$22),TRANSPOSE(SIGN(COLUMN($J8:$K8))))>=1)))=2)
Hàm MAX của bạn dư một cặp dấu ngoặc.
Tôi làm thử trường hợp những cột khác nằm ở giữa bảng.
 

File đính kèm

tuyệt vời a, nhưng có vẻ như CF không cho copy công thức vào vì quá dài đối với "hoặc" và "và 1". (office 2010 64 bit).
Đó là do file đang được lưu với dạng xls. Bạn save as lại thành đuôi xlsx, đóng file và mở lại file xlsx là được.
 
Web KT

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

Back
Top Bottom