如何比较和突出显示Excel中两列的匹配而无需替换?

时间:2012-07-16 13:09:21

标签: excel compare highlight replace

我在Excel电子表格中有两列数据。我必须看到列A中的每个值在列B中都匹配。我知道可以使用匹配函数在条件格式中比较和突出显示两列。

问题在于条件格式中的匹配功能不会从列表中排除先前匹配和突出显示的值以供将来比较。例如......

A:1,1,3,3

B:2,3,1,0

如果在条件格式中使用匹配功能,则列A中的“1”值都将突出显示,因为它看到列B中存在“1”。我需要列与一对一匹配。因此,一旦发现某个值在另一列中具有匹配项,则该匹配将从该函数执行的其余部分的比较中排除。如果可能的话,我宁愿在不使用宏的情况下完成整个项目。但如果Macros是必要的,我完全可以使用它们。

1 个答案:

答案 0 :(得分:0)

如果您的值在A列和B列中,您可以尝试:

=COUNTIF(A:A,A1)-COUNTIF(B:B,A1)

将公式放在C1中,然后复制整个列。 它将测试A列中的每个值,看它是否与B列中出现的次数相同,并显示它在A列中出现的次数。

要使它平衡,你也可以使用

=COUNTIF(A:A,B1)-COUNTIF(B:B,B1)

在D栏中,它将测试B栏中的值。

以下是使用样本数据加上1个额外行的方式,只是为了得到一个负数:

A   B   Test A  Test B
1   2      1       0
1   3      1       0
2   1      0       1
3   0      0       0
0   4      0      -1

绝对不是最优雅的解决方案,但它应该有效。

编辑: 或者您可以使用indirect referencing的条件格式来引用当前单元格:

=COUNTIF(A:A,INDIRECT("R"&ROW()&"C"&COLUMN(),FALSE))=COUNTIF(B:B,INDIRECT("R"&ROW()&"C"&COLUMN(),FALSE))

将此条件格式应用于列A将突出显示在每列中显示相同次数的任何值。