首页 > 解决方案 > 带有 DATE 条件的 SUMIFS(仅匹配年份和月份)

问题描述

我使用的数据是每天,而我从中导入值的数据是每月。

我使用了 SUMIFS,并且只想将标准设置为 YEAR 和 MONTH。因此,在每日表中,它会为相应月份的 30/31 天返回相同的值。到目前为止它只返回 0。

=SUMIFS('EA-04'!$D:$D,'EA-04'!$A:$A,DATE(YEAR($A2),MONTH($A2),1))/(DATE(YEAR($A2),MONTH($A2)+1,1)-DATE(YEAR($A2),MONTH($A2),1))

标签: exceldatesumifs

解决方案


您遇到的问题是您无法更改要询问的范围内每个单元格的格式,但您可以测试该范围内的每个日期是否在某个日期范围内(大于或小于)所以,例如,如果单元格 A2 中的值是 2018 年 10 月 1 日的第一天,那么您可以使用

=SUMIFS('EA-04'!$D:$D,'EA-04'!$A:$A,”>=”&$A2, 'EA-04'!$A:$A,”<”&EDATE($A2,1))

该公式表示小于或等于 2018 年 10 月 1 日或小于 2018 年 11 月 1 日

EDATE(date,1) 函数将 1 个日历月添加到 A2 中的日期,因此该月的 1 日成为下个月的第一日,而不管源月份的天数如何。

如果单元格 A2 中的值不是第一个,那么您可以使用此公式将其更改为第一个

=SUMIFS('EA-04'!$D:$D,'EA-04'!$A:$A,”>=”&$A2-(day($A2))+1, 'EA-04'!$A:$A,”<”&EDATE($A2-(day($A2))+1,1))

推荐阅读