SUMIF 中的复杂条件

SUMIF 中的复杂条件

有没有什么办法,如何在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 中的日期)。

如果有人有更好的方法,请告诉我们

相关内容