将vlookup的结果与多列相加

时间:2014-05-20 19:46:59

标签: arrays excel range vlookup

我试图避免重复。以下公式有效:

=IFERROR(VLOOKUP($C3,'Business Goals'!$A$3:$C$8,3),0)+
IFERROR(VLOOKUP($D3,'Business Goals'!$A$3:$C$8,3),0)+
IFERROR(VLOOKUP($E3,'Business Goals'!$A$3:$C$8,3),0)+
IFERROR(VLOOKUP($F3,'Business Goals'!$A$3:$C$8,3),0)+
IFERROR(VLOOKUP($G3,'Business Goals'!$A$3:$C$8,3),0)+
IFERROR(VLOOKUP($H3,'Business Goals'!$A$3:$C$8,3),0)

基本上我想总结C:H列,我想要求和的值都存储在同一个查找表中。

为了我自己的理智,如果你提供答案而且它不需要索引/匹配,请使用VLOOKUP表达你的答案。

1 个答案:

答案 0 :(得分:2)

您可以使用数组公式来实现这一点(请参阅下面的警告):

=SUM(('Business Goals'!$A$3:$A$8=$C3:$H3)*'Business Goals'!$C$3:$C$8) 

这使用了这样的事实:在算术运算中,如果为真,则(x=y)求值为1,否则求值为0。 ('Business Goals'!$A$3:$A$8=$C3:$H3)创建一个矩形数组,就像一个带有1的查找表,其中$C3:$H3中的值与'Business Goals'!$A$3:$A$8中的值匹配。然后将其乘以'Business Goals'!$C$3:$C$8中的相应值,最后总计整数。

请记住将公式粘贴到公式栏中,然后按Ctrl+Shift+Enter,否则不会将其识别为数组公式。

此作品提供您想要"完全匹配" VLOOKUP的形式(例如VLOOKUP(A1,B2:G30,FALSE))如果无法找到数据,则返回错误,而不是您拥有的默认近似匹配。假定排序列表并且如果找不到完全匹配则返回下一个最大行。如果您需要近似匹配,我认为没有一种巧妙的方法。