
在实际业务场景中,大量原始数据通常以发生日期为时间维度进行记录,而日常分析常需按自然月对数据进行归集统计。此时关键在于将日期字段精准提取为“年-月”或仅“月”维度,但标准 SUMIF 函数无法直接嵌套日期提取函数(如 MONTH),导致条件判断受限。
本文重点讲解如何借助 SUMPRODUCT 函数实现基于日期的按月汇总统计。
以下为某企业每日销售明细表,现需依据B列日期,快速计算2月份整体销售额。
公式设计逻辑
- SUMPRODUCT 支持在数组运算中灵活调用其他函数对区域进行批量处理;
- 选用 MONTH 函数逐个提取日期列中的月份数值;
- 将提取的月份与目标月份比对,生成由 TRUE/FALSE 构成的逻辑数组;
- 利用双负号(--)强制转换逻辑值:TRUE → 1,FALSE → 0;
- 借助 SUMPRODUCT 的数组相乘累加机制,使标记为1的行对应销售额参与求和,其余忽略。
通用写法
结合上述逻辑,可构建适用于任意月份汇总的通用公式模板:
清理、标准化、验证并汇总杂乱的 Excel 工作簿。当 Codex 需要处理 `.xlsx`、`.xls`、`.xlsm` 或 `.csv` 格式的数据时使用,包括:统一表头格式、删除空白行与空白列、修剪文本内容、去重记录、检测数据质量问题、拆分或合并工作表、生成清洗后的工作簿,以及为业务电子表格生成审计摘要。
=SUMPRODUCT(--(MONTH(日期范围)=指定月)*数值范围)
本案例中,具体应用公式为:
=SUMPRODUCT(--(MONTH(B3:B11)=B15)*C3:C11)
延伸应用
沿用相同结构,仅替换日期解析函数,即可拓展至其他时间粒度统计:
按年汇总通用公式:
=SUMPRODUCT(--(YEAR(日期范围)=指定年)*数值范围)
按日汇总通用公式:
=SUMPRODUCT(--(DAY(日期范围)=指定日)*数值范围)

















