有没有什么办法,如何在SUMIF
不使用辅助计算的函数中使用“复杂”标准?
我想根据以下(自动生成的)输入汇总每月的支出:
| A B
--+----------------------
1 | 2016-10-03 111
2 | 2016-10-12 2300
3 | 2016-11-05 500
4 | 2016-11-17 1000
因此,寻找公式,可能利用SUMIF
,用于构建以下报告(年份$C$1
和月份$D1
是需要在单独的单元格中输入并用于计算):
| C D E
--+-----------------------
| +----+
1 | 2016 1 |0 |
2 | 2 |0 |
| ... | |
10 | 10 |2411|
11 | 11 |1500|
12 | 12 |0 |
+----+
例如:期望 E1 的公式如下=SUMIF(A1:A4; And(Year(???) = $C$1; Month(???) = $D1); D1:12)
我能够计算所有输入行的月份/年份谓词并以此为基础SUMIF
,但它需要另一个不希望的维护级别。
我进行了一些实验并搜索了帮助,但看起来标准更多的是文本而不是公式/函数友好,有什么想法吗?
答案1
我不知道这是否能帮助你解决问题。我的问题是我有一张支出明细表。A 列是日期,B 列是费用。我想知道每个月花了多少钱。我按照与你的问题相同的方式设置了它,以展示我是如何克服它的。
| A B C
------------------------------------------
1 | 2016/10/03 111 2016/10/01
2 | 2016/10/12 2300 2016/11/01
3 | 2016/11/05 500 2016/12/01
4 | 2016/11/17 1000 2017/01/01
我对类似的问题困惑了一段时间,但在网上找不到任何答案,所以一直尝试各种方法,直到我想到这个。
我将我想要的月份第一天的日期放在一个未使用的单元格 (C1) 中,然后将下个月第一天的日期放在其下方的单元格 (C2) 中,依此类推。
| A B C
------------------------------------------
1 | 2016/10/03 111 2016/10/01
2 | 2016/10/12 2300 2016/11/01
3 | 2016/11/05 500 2016/12/01
4 | 2016/11/17 1000 2017/01/01
那么我第一个月的公式就是。
=SUMIFS( B1:B4, A1:A4, “>="&C1, A1:A4, “<”&C2)
我下个月的公式是。
=SUMIFS( B1:B4, A1:A4, “>="&C2, A1:A4, “<"&C3)
SUMIFS() 正如我所看到的,根据要满足的多个条件对某个单元格范围内的单元格内容求和。
公式的第一部分 B1:B4 是包含在所有条件都成立时需要求和的成本的单元格范围。
公式的第二部分 A1:A4 是包含与要满足的第二个标准相关的成本日期的范围。
公式的第三部分“>=”&C1 是必须满足的第一个条件(日期高于或等于 C1 中的日期)。
公式的第四部分 A1:A4 是包含与要满足的第二个条件相关的成本日期的范围(与要满足的第一个条件的日期范围相同)。
公式的第五部分也是最后一部分“<”&C2 是必须满足的第二个条件(日期早于 C2 中的日期)。
如果有人有更好的方法,请告诉我们