Excel - 如果行满足多个条件则求和

Excel - 如果行满足多个条件则求和

我有一份银行账户交易历史记录的电子表格,其格式如下:

  | A          | B        | C        | D
1 | Date       | Amount   | Balance  | Category
2 | 2013-03-10 | $ -10.59 | $3700.76 | Food shopping
3 | 2013-03-11 | $ - 5.10 | $3695.66 | Car parking
4 | 2013-03-11 | $ 100.00 | $4695.66 | Salary

在我的电子表格中,该Balance列被隐藏了,因为我自己重新计算了它。

我想要每个月的摘要,数据如下:

  | A       | B        | C           | D
1 | Month   | Income   | Expenditure | Net
2 | 2013-03 | $ 100.00 |     $ 15.69 | $ 84.31
3 | 2013-04 | $  00.00 |     $ 00.00 | $ 00.00

这些是我现在拥有的公式,所以我可以Net很好地计算,但我不知道如何计算IncomeExpenditure按月计算,因为SUMIF只允许我在单个列上执行条件(在本例中为列Date,但我只想>0.0Income和的行<0.0求和Expenditure):

Net = =SUMIF( MonthAndYear( Txn!$A:$A ) , $A$2, Txn!$B:$B )

答案1

您可以使用SUMIFS多个条件求和。例如:

=SUMIFS(B1:B6,A1:A6,"2013-03",B1:B6,">0")

这假设您的月份列是字符串而不是日期。因为SUMIF只允许直接比较,并且不能在月份列上运行函数。因此它无法将日期转换为数字。

答案2

在 Excel 2007 或更高版本中,您可以使用SUMIFS多个条件,因此对于特定月份的收入,请尝试

=SUMIFS(Txn!B:B,Txn!B:B,">0",Txn!A:A,">="&A2,Txn!A:A,"<"&EOMONTH(A2,0)+1)

其中 A2 包含月份的第一天(无论如何格式化)

以及类似的支出,即

=SUMIFS(Txn!B:B,Txn!B:B,"<0",Txn!A:A,">="&A2,Txn!A:A,"<"&EOMONTH(A2,0)+1)*-1

相关内容