使用excel中的If语句对多个工作表中的单元格求和

使用excel中的If语句对多个工作表中的单元格求和,excel,excel-formula,sum,countif,sumifs,Excel,Excel Formula,Sum,Countif,Sumifs,我目前正在使用excel中的3张工作表。它们被称为Sheet1、Sheet2和Summary。在表1和表2中,我有一个州列表,其中有一列是税收。在汇总表中,我想做一个SUMIF语句,就像汇总表中的状态在表1和2中一样,然后我想将两个收入金额相加。因此,如果PA的状态在摘要页面中,它显示在Sheet1和Sheet2中,那么我想将这两个单元格相加。现在,如果它只出现在Sheet1中,我仍然希望将其添加到摘要页面,因为它应该只添加一个0,因为它不在Sheet2中。这方面的任何帮助都会很好。我以前使用过

我目前正在使用excel中的3张工作表。它们被称为Sheet1、Sheet2和Summary。在表1和表2中,我有一个州列表,其中有一列是税收。在汇总表中,我想做一个SUMIF语句,就像汇总表中的状态在表1和2中一样,然后我想将两个收入金额相加。因此,如果PA的状态在摘要页面中,它显示在Sheet1和Sheet2中,那么我想将这两个单元格相加。现在,如果它只出现在Sheet1中,我仍然希望将其添加到摘要页面,因为它应该只添加一个0,因为它不在Sheet2中。这方面的任何帮助都会很好。我以前使用过COUNTIFs,但我似乎无法正确使用它。谢谢


我在这里假设了几件事:

假设:

表1在C列有州名称,在D列有相应的收入

表2在C列有州名称,在D列有相应的收入

汇总表的C6单元格中有州名称,您希望在汇总表的D列中看到州的总收入(来自表1和表2)

为此,请在汇总表的D6单元格中使用此公式。您可能需要修改我假设为“C4:D5”的表的范围。对你来说可能不一样

 =IF(ISERROR(VLOOKUP(C6,Sheet1!C4:D5,2,FALSE)),0,VLOOKUP(C6,Sheet1!C4:D5,2,FALSE))+IF(ISERROR(VLOOKUP(C6,Sheet2!C4:D5,2,FALSE)),0,VLOOKUP(C6,Sheet2!C4:D5,2,FALSE))
根据更多描述,这里是更新的公式:

SUMIF(Sheet1!$B$3:$D$11,Summary!C3,Sheet1!$D$3:$D$11)+SUMIF(‌​Sheet2!$A$3:$B$11,Su‌​mmary!C3,Sheet2!$B$3‌​:$B$11)

使用VLOOKUP进行测试在处理时间上可能代价高昂,最好使用COUNTIF检查是否存在,如果是真的,则使用VLOOKUP<代码>=IF(COUNTIF(Sheet1!C4:D5,C6)>0,VLOOKUP(C6,Sheet1!C4:D5,2,0),0)+IF(COUNTIF(Sheet2!C4:D5,C6)>0,VLOOKUP(C6,Sheet2!C4:D5,2,0)@dandonoghue-我没有考虑速度。根据您的建议,我查看了MSDN,发现该函数自Excel2007起就可用,名为IFERROR。你怎么认为?这不是应该更快吗?IFERROR(VLOOKUP(C6,Sheet1!C4:D5,2,FALSE),0)+IFERROR(VLOOKUP(C6,Sheet2!C4:D5,2,FALSE),0)@ana感谢您的帮助。似乎金额仅来自表2。表1中的列如下:A=类型,B=州,C=州名称,D=收入,E=信用。然后在表2中,列为A=状态,B=收入,C=收入。现在在摘要页面上,列与表1相同。此外,由于我希望最终将两张表中的两个金额相加(如果可用),我是否需要在其中添加一个SUMIF语句或其他内容?@goku0650根据您的解释,您可以使用以下SUMIF公式对表1和表2的范围求和。。。。SUMIF(Sheet1!$B$3:$D$11,Summary!C3,Sheet1!$D$3:$D$11)+SUMIF(Sheet2!$A$3:$B$11,Summary!C3,Sheet2!$B$3:$B$11)+SUMIF(Sheet2!$A$3:$C$11,Summary!C3,Sheet2!$C$3:$C$11)@Anand,谢谢你,但结果还是来自Sheet1。我是否应该使用SUMPRODUCT并以某种方式将这些SUMIFs包装在其中?