2014-10-17 110 views
1

表1VLOOKUP多列匹配

A | B   | C 
0 | 100001 | 855.71 
0 | 100002 | 73.68 
0 | 100003 | 704.58 
0 | 100004 | 0 
0 | 100005 | 0 
0 | 100006 | 604.57 
0 | 100007 | 15638.66 
0 | 100008 | 1085.85 

表2

A | B   | C 
0 | 100001 | 
0 | 100002 | 
0 | 100003 | 
0 | 100004 | 
0 | 100005 | 
0 | 100006 | 
0 | 100007 | 
0 | 100008 | 
0 | 100009 | 
0 | 100010 | 
0 | 100011 | 

这是我的2张在Excel中的样子,我需要做二号VLOOKUP页面在第一张表格中查找表格,并在A列和B列匹配时打印列C中的内容。所以比赛0和100001将显示855.71。

我已经试过串联式柱A和B在一起,并匹配使用这个公式:

=VLOOKUP(A3&B3,Sheet1!$A$1:$D$8,3,FALSE) 

但我刚拿到#N/A错误,任何帮助将是巨大的。

回答

3

您必须连接到Sheet1上的新第4列才能以此方式使用Vlookup。相反,虽然,你可以使用sumifs()因为您的查找是一个数字,查找值似乎是唯一的:

=sumifs(Sheet1!C:C,Sheet1!A:A,A1,Sheet1!B:B,B1) 

作为替代方案,如果在C值不是数字,你不希望他们总结,你可以使用的index()sumproduct()组合,其中sumproduct()将提供在其上找到匹配的行数和index()将会从该行的值:

=index(Sheet1!C1:C500, sumproduct((A1=Sheet1!A1:A500)*(B1=Sheet1!B1:B500)*Row()), 1) 

这是丑陋的,但它会带你出去了不得不为concatena创建一个多余的列一把钥匙。请注意,只有在A和B都是唯一的情况下才能使用。如果有多于A行和B行相同的行,则返回的ROW()将相加并且查找将不正确。

+0

谢谢!我让我的'vlookup'工作后,我重新做了,它运行良好,我可能有拼写错误?但我也喜欢你的方法! – Caveman42 2014-10-17 16:42:27