Excel快速比较不同区域的数值
在如图90‑1所示的工作表中,源数据和校验数据分别位于A2∶B21和D2∶E21,如果希望标记出与源数据不匹配的校验数据,方法如下。
图90‑1 需要对比的两个数据区域
单击D2并拖动光标到E21以选定区域D2:E21,单击菜单“格式”→“条件格式”。
在“条件格式”对话框中,单击“条件1(1)”的下拉箭头,在列表中选择“单元格数值”项,运算符选择“不等于”,在右边的文本框中输入:=A2
单击“格式”按钮,在“单元格格式”对话框的“图案”选项卡中选择单元格底纹颜色为淡蓝,单击“确定”按钮,如图90‑2所示。
图90‑2 设置条件格式对比数据
单击“条件格式”对话框的“确定”按钮,关闭对话框。
从图90‑3中可以看到,所有不匹配源数据的校验数据都已经被标出。
图90‑3 不符的数据被条件格式做出标记
在技巧90中介绍了利用条件格式快速对比不同区域中的数值的一种方法。然而在实际工作中,需要对比的数据可能并不是位置一一对应的。例如,在如图91‑1所示的表格中,需要把与账号二不匹配的账号一标记出来,但两列账号的排列顺序并不相同,对于这种情况,条件格式的设置要相对复杂一些。
图91‑1 待检查的表格
单击A2并拖动光标到A11以选定区域A2:A11,单击菜单“格式”→“条件格式”。
在“条件格式”对话框中,单击“条件1(1)”的下拉箭头,在列表中选择“公式”项,在右边的文本框中输入公式:
=OR(EXACT(A2,B$2:B$11))=FALSE
单击“格式”按钮,在“单元格格式”对话框的“图案”选项卡中选择单元格底纹颜色为淡蓝,单击“确定”按钮。
单击“条件格式”对话框的“确定”按钮。
以上操作完成后,账号一中所有与账号二不匹配的内容都会被标记出来,如图91‑2所示。
图91‑2 与账号二不匹配的账号一都被标记出来了
在上述公式中,EXACT函数用于比较两个文本字符串是否完全相同,如完全相同则返回TRUE,否则返回FALSE。
使用以下3个公式,也能够完成同样的任务:
=ISNA(MATCH(A2,B$2:B$11,))
=ISNA(VLOOKUP(A2,B$2:B$11,1,))
=NOT(OR(A2=B$2:B$11))
有的读者可能更熟悉COUNTIF函数,但是在这里,如果使用公式=COUNTIF(B$3:B$12,A3),会得到错误的结果。因为当字符型数字的长度超过15位时,COUNTIF函数会把从第16位开始的数字都当作0计算。
如果使用COUNTIF函数,可以按下面的方法来创建公式:
=COUNTIF(B$3:B$12,A3&"*")=0
这样就可以强制COUNTIF使用文本方式进行计数。