Excel如何查找一个列中的值是否存在于另一个范围内的值?

43

我有两列数据- A列包含11027个值,I列包含42000个值。这两列都包含一些代码细节。

类似于这样:

A               B
q123           as124
as124          gh456
ff45           q123
dd1             dd2
xx2
xx3
xx4

我想在Excel中查找列A中的名称是否存在于列B中。


3
可能是 在列A中查找是否包含来自列B的值? 的重复问题。 - Stevoisiak
3个回答

75

这是您需要的:

 =NOT(ISERROR(MATCH(<cell in col A>,<column B>, 0)))  ## pseudo code

对于A的第一个单元格,其内容为:

 =NOT(ISERROR(MATCH(A2,$B$2:$B$5, 0)))

按照以下方式输入公式(并向下拖动):

输入图像说明

您将会得到:

输出图像说明


45
备选方案:=COUNTIF($B$2:$B$5,A2)>0翻译:判断在B2至B5单元格范围内,是否存在与当前A2单元格相同的数值,返回TRUE或FALSE。 - tigeravatar
@tigeravatar 我不明白为什么只有“A2”就能表示“查找整个A列”? - David Doria
David Doria,它本身不会。它说要取A2中的值并查看它是否在B2->B5范围内。然后,当您拖动该公式时,下一个单元格将检查A3与B2->B5,接下来是A4等等。基本上,您逐个获取A中的每个项目,并在所有B中查找该项目。 - Jim50

1

使用tigeravatar提供的公式:

=COUNTIF($B$2:$B$5,A2)>0 – tigeravatar Aug 28 '13 at 14:50

作为条件格式。高亮显示列A。选择按公式设置条件格式。输入上述公式-这将查找在B列中也在A列中的值。选择一个格式(我喜欢使用填充和粗体颜色)。

要查找所有这些值,请突出显示列A。数据>筛选并选择按颜色筛选。


0
您可以使用“高级筛选”,它位于“数据”选项卡中。我假设您想要检查列A中的哪些条目在列B中(如您的示例所示)。 首先,您的数据必须具有标题。 第二步,创建条件范围,即带有列B标题的列A条目(您告诉Excel应用条件的列)。 在“列表区域”中按箭头并选择范围B,包括标题。 在条件范围中,按箭头并选择您在第二步中创建的范围,包括标题。 按确定。现在您看到的是满足条件的条目或列A中的条目在列B中。要再次显示所有数据,请转到“排序和筛选”并按“筛选”按钮。 您还可以选择打开第二个工作表并将数据提取到该工作表中。在此表格中创建条件,即带有列B标题的列A条目,如上所述。从这个新表格开始,选择“高级”并选择“复制到第二个位置”。 “列表区域”是列B的范围,因此您必须选择第一个工作表以选择范围B。对于条件范围,请按箭头并选择刚刚创建的条件范围。 对于“复制到”,请选择条件范围底部以下2行的单元格。 按确定。您将获得列A中满足列B条件的条目的提取,即出现在那里。 现在,您可以删除条件范围的行以将数据带到工作表顶部。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接