按日期和类别进行 SUMIF?

按日期和类别进行 SUMIF?

我正在尝试汇总一份费用清单,既要按日期划分,也要按费用类别划分。我知道这是 SUMIF 的工作,但我尝试过多种方法,但结果都不太正确。

我目前最好的猜测是将以下结果分别放入每个单独的结果单元格中:=SUMIF($A$4:$C$14, AND($E5, MONTH()=F$4),$C$4:$C$14)

我知道这不起作用,特别是因为我将 MONTH() 函数留空,但我不知道如何告诉 Excel 我正在寻找费用对应日期的月份值。

我一直在努力解决这个问题 – 非常感谢任何建议!!

数据和预期结果

答案1

使用数据透视表。

将日期放在列中但仅保留月份。

将类别放在行中,将金额放在值中,确保将其设置为总和:

在此处输入图片描述


如果您确实想要一个公式,那么使用 EOMONTH 将日期括起来:

=SUMIFS($C:$C,$A:$A,">" & EOMONTH(DATE(2018,F$4,1),-1),$A:$A,"<=" & EOMONTH(DATE(2018,F$4,1),0),$B:$B,$E5)

在此处输入图片描述

答案2

虽然我更喜欢使用数据透视表,但如果您真的只是想要一个公式,那么这就不需要SUMIFSSUMIF

SUMIFS(sum_range, criteria_range_1, criteria_1, [criteria_range_2, criteria_2, ... criteria_range_n, criteria_n]) {n<=127}

我想不出在语句中进行 Month() 比较的方法SUMIFS,但您可以插入一个辅助列。(对于此示例,我假设使用 D 列而不是插入的列,以便其余列保持相同的字母。)

在单元格 D4 中,输入=MONTH(A4),然后将该公式向下拖动。

如果您想在 B 列和 A 列值都符合某个条件的情况下对 C 列值求和,那么根据您拥有的单元格引用和辅助列的使用,这将相当于您在语句中尝试执行的操作SUMIF

=SUMIFS($C$4:$C$14, $B$4:$B$14, $E5, $D$4:$D$14, F$4)

相关内容