在Excel中汇总2个或更多的VLOOKUP
我有一个单元需要总结3个不同的值,但我不想使用相对/绝对单元格引用,因为源数据每年都会更改,因此单元格引用每年都需要重新指向。
我已经使用VLOOKUP来处理只显示1个值的单元格,但是我找不到将两个或多个VLOOKUP的结果相加的方法。 另外,3个值中的每一个都有不同的标准,因此我认为我需要3个独立的VLOOKUP函数。
有没有办法做到这一点?
这是我用过的公式,它返回一个' #N / A '错误:
= vlookup(“10000”,datatable,3,false)+ vlookup(“10001”,datatable,3,false)+ vlookup(“10002”),datatable,3,false)+等等等
非常感谢罗布先生
以下是一个简单的3个VLOOKUP求和的例子:
=SUM(VLOOKUP("A",A1:B3,2,FALSE),VLOOKUP("E",A5:B7,2,FALSE),VLOOKUP("I",A9:B11,2,FALSE))
我把3个简单的表,每个3行和2列,并将查找值加在一起。 所以我查找A
并返回1
, E
返回5
,然后返回9
。 然后我总结他们,并返回15
。 🙂
提供唯一可以改变的部分就是lookup_value (就像你的情况那样),那么,不要写多个不同的VLOOKUP
子句,然后将它们相加(这可能会导致构build一个非常长的结构),你可以使用一个单一的,等价的VLOOKUP
设置。
所以,而不是,例如:
=VLOOKUP("X",DataTable,3,FALSE)+VLOOKUP("Y",DataTable,3,FALSE)+VLOOKUP("Z",DataTable,3,FALSE)
我们可以使用较短的:
=SUM(VLOOKUP(T(IF(1,{"X","Y","Z"})),DataTable,3,FALSE))
或者,为了更大的灵活性,如果我们在工作表内的某个连续范围内有“X”,“Y”和“Z”,例如H1:H3
,则:
=SUM(VLOOKUP(T(IF({1},H1:H3)),DataTable,3,FALSE))
如果标准不是文本string,而是数字,那么我们可以使用N
而不是T
:例如,如果我们正在寻找,而不是“X”,“Y”和“Z”,但是1,2和3,则我们将使用:
=SUM(VLOOKUP(N(IF(1,{1,2,3})),DataTable,3,FALSE))
要么:
=SUM(VLOOKUP(N(IF({1},H1:H3)),DataTable,3,FALSE))
如果我们的标准包含文本和数字的混合,例如“X”,“2”和“Z”,那么我们需要一个稍微不同的方法,尽pipe我会把它留给另一个post!
参考文献:
https://excelxor.com/2014/09/05/index-returning-an-array-of-values/
问候
我的妈呀。 停止使用VLOOKUP
,每个人。 INDEX
与MATCH
一起更清洁,整洁,不易出错。
现在,对于你在做什么,你也不需要。 为什么不检查SUMIFS
在你的情况下,它会看起来像这样
=SUMIFS(Sumcolumn;Criteriacolumn;10000;Criteriacolumn2;10001,...)
而且,即使你的sumcolumns是不同的 – 总结几个sumifs比总结几个vlookups更容易,因为如果空引用,vlookup会抛出一个#N #N/A
,而sumifs将返回0
。 如果您希望只使用一个公式就可以达到更高的效率,请使用SUMPRODUCT
– 但是这是一个需要编写一些练习的公式。