excel公式是否有办法在excel的2d矩阵中查找多个值?例如:
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}可能会很长。
答案 0 :(得分:5)
将搜索条件分别放在一个单元格中:
然后使用这个公式:
=SUMPRODUCT(ISNUMBER(SEARCH($A$1:$A$3,J1))*ISNUMBER(SEARCH(COLUMN($B$1:$G$3),K1))*$B$1:$G$3)
如果您想对数字进行硬编码,那么您可以这样做:
=SUMPRODUCT(ISNUMBER(SEARCH($A$1:$A$3,"2015,2016"))*ISNUMBER(SEARCH(COLUMN($B$1:$G$3),"2,4,6"))*$B$1:$G$3)
答案 1 :(得分: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)
同样,斯科特的答案是完全正确的,我只是以不同的方式添加以获得相同的结果。
希望它可以帮助您或其他面临同样挑战的人。