匹配两列中的两个值,如果出现在另一个表中,则返回yes

问题描述 投票:1回答:2

我试图找出工作表2中的工具序列号及其客户名称列表是否显示为工作表1中较大电子表格的一部分。

在工作表1中,序列号在A列中,名称在M列中。在表2中,序列号在B列中,名称在C列中。

我可以使用以下公式在Sheet 2的D2中返回B2:

=VLOOKUP(B2, 'Sheet 1'!A:A, 1, FALSE)

但是,这与列B和C不匹配,所以我一直在使用以下公式来处理表2的D列(不起作用,但这是我认为的开始):

=MATCH(1,IF(B2='Sheet 1'!$A:A, IF(C2='Sheet 1'!M:M,1,0),0),0)

我的问题:

  1. 如何正确确认B2和C2出现在Sheet 1的同一行?
  2. 有没有比VLOOKUP更好的功能输出"TRUE""1"或我选择的陈述("yes")如果找到匹配?
excel matching
2个回答
0
投票

您可以vlookup然后使用if子句检查相应的M列是否与B列匹配

=IF(VLOOKUP($A$2:$A$6,$A$2:$M$6,13)=B2,"Yes","No")

Sheet 1
A    M  
1   One
2   Two
3   tree
4   fr
5   fv

   Sheet 2 data     Sheet2 D Col
    A     B
    1    One                Yes
    2    Two                Yes
    3    Three              No
    4    Four Five          No
    5    Five               No

0
投票

你只需要在column D上这个公式并向下拖动:

=VLOOKUP(B2,Sheet1!$A$2:$M$4,13,0)

VLOOKUP中的第3个参数是范围的列号(此处的范围来自column A to M),因此它知道匹配的位置。

您还可以使用INDEX/MATCH,例如:

=INDEX(Sheet1!$M$2:$M$4,MATCH(B2,Sheet1!$A$2:$A$4,0))

两者都应该适合你的任务。

© www.soinside.com 2019 - 2024. All rights reserved.