我有一系列日期和值:
8.12.2018 12
5.2.2019 32
15.7.2019 89
我想使用类似(SUMIFS(YEAR(A1:A3);2018)
之类的东西,但这是不允许的。
我知道,我可以在单独的列中提取年份,但是在这里我想问一下sumifs
函数内部是否可能?
答案 0 :(得分:1)
尽管我认为您不能这样做,但已通过@forwardEd证明,您可以通过使用SUMIFS的方式更改标准,但是,您也可以在SUMPRODUCT
中进行此练习:
=SUMPRODUCT(--(YEAR(A1:A3)=2018),B1:B3)
答案 1 :(得分:1)
假设您的日期是有效的excel日期,而不是日期的字符串/文本,那么您可以使用SUMIFS公式计算年份,如下所示:
=SUMIFS(B1:B3,A1:A3,">="&date(2018,01,01),A1:A3,"<="&date(2018,12,31))
基本上,该公式是将B1:B3中的所有值相加,其中A1:A3中的日期大于或等于该年的第一天,并且小于或等于该年的最后一天。我选择使用date函数编写日期,因为它比日期的整数格式更容易识别。如果您只想在单元格c2中写年作为标准,则将上面公式中的2018替换为c2。
更新
我尚未对其进行测试,但是由于默认的无时间日期默认为00:00:00,因此这意味着上述公式将在12月31日之前终止几乎所有与之相关的时间。因此,较好的截止日期应小于第二年的1月1日,而不是小于或等于12月31日。因此,您可以将上述公式修改为:
=SUMIFS(B1:B3,A1:A3,">="&date(2018,01,01),A1:A3,"<"&date(2019,01,01))
or
Where C2 is the year as an integer
=SUMIFS(B1:B3,A1:A3,">="&date(C2,01,01),A1:A3,"<"&date(C2+1,01,01))
答案 2 :(得分:0)