匹配cols a和c然后匹配cols b和d

时间:2012-10-23 14:44:46

标签: excel match

我正在尝试匹配cols a(id)和c(id),然后是相应的''balance''列b(余额)和d(余额)。

e.g。我需要e中的输出(余额匹配id上的匹配):

id  balance id  balance does balance match keying on id
1   20.1    2   30  yes
2   30  6   24.6    no
3   12.5    4   16  yes
4   16  5   51  no
5   50  3   12.5    yes
6   24.5    1   20.1    yes

这让我疯了。我可以将id与vlookup匹配,但如果所有行都混淆了(如上所述),我就无法轻易比较b和d中的相应余额。如果按顺序排列的行当然很容易(使用IF(b = d,“true”,“false”)) 在这种情况下,我确实有数万行。

有谁知道这样做的方法?任何帮助将不胜感激

3 个答案:

答案 0 :(得分:1)

使用数组公式...

将其放入E1:

=ISNUMBER(MATCH(C2&D2,A:A&B:B,0))

然后按Ctrl + Shift + Enter使其成为数组公式并向下拖动

希望这可以解决问题!!

答案 1 :(得分:1)

除非我不完全理解某些内容,否则你应该可以在vlookup使用=IF(D2=VLOOKUP(C2,$A$2:$D$7,2),"yes", "no") 。如果您的标题位于第1行并且值从第2行开始,那么您的值将超出范围A2到D(x),其中x是您的最后一行值。在上面的例子中,这将是第7行,所以A2到D7。

您可以设置'余额匹配'(在您的示例中为E2)以使用此公式,再次将7替换为$ D $ x中的x以定义数据集的范围。

{{1}}

然后将其拖到最后一行以完成结果列。

答案 2 :(得分:0)

又一个选择:

假设您的数据以A1开始......

E2的公式可能是

=IF(INDEX(A:D,MATCH(C2,A:A),2)=D2,"Yes","No")

将此公式复制并粘贴到所有行将显示所请求的结果。

请注意,我使用的是A:D,因此您无需仅为列定义数据范围。