2016-08-24 92 views
2

有没有办法让excel公式在excel中查找2d矩阵中的多个值?例如:在excel中查找多个值

sum(vlookup({2015,2016},Matrix,{2,4,6},False)) = 3 + 4 + 5 + 2 + 3 + 2 

2014 1 3 7 11 9 2 
2015 3 6 4 12 5 8 
2016 2 1 3 99 2 6 

我不一定必须使用函数VLOOKUP,但我更喜欢没有使用相同的功能,那么多次求和而由于该表{} 2015,2016可能是相当长的。

回答

5

把你的搜索条件在每一个单元:

enter image description here

然后用这个公式:

=SUMPRODUCT(ISNUMBER(SEARCH($A$1:$A$3,J1))*ISNUMBER(SEARCH(COLUMN($B$1:$G$3),K1))*$B$1:$G$3) 

enter image description here


如果你想硬编码的数字那么你可以这样做:

=SUMPRODUCT(ISNUMBER(SEARCH($A$1:$A$3,"2015,2016"))*ISNUMBER(SEARCH(COLUMN($B$1:$G$3),"2,4,6"))*$B$1:$G$3) 
+1

我非常喜欢它,它确实可以很好地与Excel列一起查看实际对应的矩阵/表格列。如果表格的左上角的单元格在C4中,则需要添加一个列调整因子,以使列号相对于数据表格,而不仅仅是Excel表单位置。我认为这很清楚,现在我在圈子里讨论。 –

2

我喜欢@ ScottCraner的回答很多,我只是做了略微不同,但使用了近似相同的技巧。

对于我来说,我把一年值作为N列如下:

N1 = 2015 
N2 = 2016 

,我想使用的查找在O列的列:

O1 = 2 
O2 = 4 
O3 = 6 

然后,我用下面(输入作为数组公式 - 这意味着你按Ctrl + Shift + Enter把它在后):

=SUMPRODUCT(ISNUMBER(MATCH(A1:A3,$N$1:$N$2,0))*ISNUMBER(MATCH(COLUMN(A1:G3)-COLUMN(A1)+1,$O$1:$O$3,0))*A1:G3) 

再一次,斯科特的回答是完全正确的,我只是以不同的方式添加以达到相同的结果。

希望它可以帮助您或其他人面临同样的挑战。

+1

我不认为它需要与CSE一起输入。我一直在玩它,它没有工作正常。 –

+0

纠正我,如果我错了。 '-COLUMN(A1)+ 1'只不过是'-1 + 1',总是'0',所以可以从公式中删除。 – Mrig

+0

@ScottCraner,酷! - 我真的没有尝试过没有......好的检查! –