Google Sheets应用条件判断前转换日期值的无辅助列方案咨询
Google Sheets 按月份汇总日期数值无辅助列解决方案
你之前尝试的方案无效,核心原因是Google Sheets中输入的日期会被存储为数值类型,单元格显示的Aug、12 Aug 2021都只是格式化后的展示效果,底层不存在对应的文本内容,因此无法直接用文本条件匹配。
下面提供两种无需辅助列、无脚本的实现方案:
方案1:SUMIFS 日期范围匹配(推荐,大数据量性能更优)
通过限定月份的起止日期范围实现汇总,可精确匹配指定年份的对应月份:
=SUMIFS(D2:D, A2:A, ">="&DATE(2021,8,1), A2:A, "<="&EOMONTH(DATE(2021,8,1),0))
DATE(2021,8,1)生成2021年8月1日的日期值EOMONTH(日期, 0)自动返回对应日期所在月份的最后一天- 可以替换公式中的年、月参数实现动态匹配
方案2:SUMPRODUCT 遍历提取月份(适配跨年份同月份汇总)
直接在计算过程中对每个日期提取月份做判断,无需额外辅助列:
汇总所有年份的8月数据:
=SUMPRODUCT(IFERROR(MONTH(A2:A)=8, FALSE)*D2:D)
仅汇总2021年8月数据:
=SUMPRODUCT(IFERROR((MONTH(A2:A)=8)*(YEAR(A2:A)=2021), FALSE)*D2:D)
MONTH()函数直接从日期值中提取月份整数(1-12)IFERROR()用于处理A列的空单元格,避免计算报错- 不需要限定年份可以删掉
YEAR()对应的判断条件
内容的提问来源于stack exchange,提问作者Mimayuki
相关产品推荐
相关产品推荐

