如何在Excel中使VLOOKUP公式有条件?

我有一个大的Excel工作簿与多个工作表和大量的数据。 每第三张纸是前两组的混合物。 我已经设置了以下公式从每个工作表中提取数据,将它们添加在一起,并将其显示在第三个工作表中:

=SUM(VLOOKUP($A7,'worksheet 1'!$A:$F,2,FALSE)+VLOOKUP($A7,'worksheet 2'!$A:$F,2,FALSE))

这可以按预期工作,除非列A的值位于源工作表之一中,而不是另一个。 然后,我收到#N / A错误,“价值不可用”。

我想要做的是,如果第一个工作表中不存在列A的值,那么Excel会忽略该VLOOKUP请求,并简单地从第二个工作表中提取数据(反之亦然,对于# 2但不是#1)。

如果VLOOKUP不适合使用,我可以改变它。 我有一个示例表,我用来build立这个查询,这就是他们如何把它放在一起。

我不是Excel专家,我从来没有使用过Access,所以我正在学习。 任何帮助表示赞赏!

既然你正在使用数字,你可以使用多个sumif语句。

我会build议像这样的东西:

 =SUM(SUMIF('worksheet 1'!$A:$A,$A7,'worksheet 1'!$B:$B), SUMIF('worksheet 2'!$A:$A,$A7,'worksheet 2'!$B:$B)) 

SUMIF速度更快,不会在整个范围内查找,如果在A7中找不到该值,则只会返回0。

我希望这有帮助。

UPDATE

简单的例子。 假设我们有2张总列,我们希望得到总单元的值:

工作表Sheet1

Sheet2中

你可以总结2 VLOOKUP forumale,或者你可以使用SUMIF如下:

 =SUM(SUMIF(Sheet1!$A:$A,$A$7,Sheet1!$B:$B),SUMIF(Sheet2!$A:$A,$A$7,Sheet2!$B:$B)) 

上面的说法是:在单元格A7中查找Sheet1中$ A:$ A的单元格中的值,并返回$ B:$ B范围内的相同行中的值,然后在sheet2中执行相同的操作,然后将它们相加。

请注意, SUMIF实际上将所有的分类汇总在一个范围内,所以如果你在Sheet1!$ A:$ A中有2个总数,那么它将它们加起来。 在某种程度上,这与VLOOKUP将做的相反:一旦find包含该值的第一行,它就会停止。 SUMIF不会停止。

上面例子中的结果是208,这就是你应该得到的结果。