夜雨聆风学习资料网

ARTICLE · 1001773

零基础学EXCEL 第十四篇:SUMPRODUCT函数与SUMIFS函数的结合使用

零基础学EXCEL 第十四篇:SUMPRODUCT函数与SUMIFS函数的结合使用

前面有讲到SUM、SUMIF、SUMIFS的用法,今天给大家讲解SUMPRODUCT函数与SUMIFS函数的结合使用,让大家知道在什么情况下使用这2个函数。

这里说的结合使用 SUMPRODUCT 和 SUMIFS 并不是指将它们嵌套在一个公式里(通常也不建议这样做,因为逻辑太冗余),而是指在‌不同的业务场景下,根据数据的复杂程度和引用方式,灵活选择或组合使用这两个函数‌。

简单来说,主要分以下场景:

1、简单多条件、同表统计‌: 用 SUMIFS

2、跨表引用、复杂逻辑(如“或”关系、函数判断)‌:用 SUMPRODUCT

3、多值批量求和‌ : 用SUMPRODUCT 嵌套 SUMIFS

以下结合不同场景给大家举例说明:

一、跨工作表/跨工作簿求和:用SUMPRODUCT 

当需要从一个‌关闭的外部文件‌或另一个工作表引用数据时,SUMIFS函数经常会因为链接更新问题报错或返回0,而 SUMPRODUCT函数可以稳健运行。

公式模板:

=SUMPRODUCT((条件区域1=条件1)*(条件区域2=条件2)*求和区域)

举例:

假如要在一个新表中,统计另一个工作薄“销售总表”中“销售明细”工作表里面的部门是“销售部”且“销售额”大于500的总和,如图:

(1)SUMIFS 做法‌:

=SUMIFS([销售总表.xlsx]销售明细!$E:$E,[销售总表.xlsx]销售明细!$B:$B,A2,[销售总表.xlsx]销售明细!$E:$E,">500")

在“销售总表”打开状态时,计算结果没有问题;但将其关闭后,公式会报错:

(2)SUMPRODUCT 做法‌:

=SUMPRODUCT(([销售总表.xlsx]销售明细!$B2:$B22=A3)*([销售总表.xlsx]销售明细!$E2:$E22>500)*[销售总表.xlsx]销售明细!$E2:$E22)

即使源文件关闭,只要路径正确,它也能直接读取数值进行计算,无需刷新链接。

二、处理“或”逻辑(OR)与复杂排除

SUMIFS 的所有条件之间是“与”(AND)的关系,无法直接处理“部门A ‌或‌ 部门B”的情况。虽然可以用多个SUMIFS相加,但公式冗长。

这时用 SUMPRODUCT 更好。

举例:

假如要统计“销售部” ‌或‌ “市场部” 且 “销售额 > 500” 的总额:

(1)SUMIFS 做法‌:

=SUMIFS(E:E,B:B,L2,E:E,">500")+SUMIFS(E:E,B:B,L3,E:E,">500")

(2)SUMPRODUCT 做法‌:利用 + 号代表“或”,* 号代表“且”

  公式模板:

   =SUMPRODUCT(((条件区域1=条件1) + (条件区域2=条件2))) * (条件区域3>500) * 求和区域)

三、多值批量求和(SUMPRODUCT 嵌套 SUMIFS)

如果需要一次性计算多个特定项目(如“蔬菜”、“水果”、“肉食”)的总和,写三个 SUMIFS 相加太慢。可以利用 SUMPRODUCT 的数组特性来驱动 SUMIFS。

公式模板:

=SUMPRODUCT(SUMIFS(求和列, 条件列, {"值1","值2","值3"}))

四、动态阈值与函数判断

这是SUMIFS 的短板,SUMIFS 的条件区域必须是直接的单元格引用,不能在条件区域里套用函数(如 MONTH()、YEAR()、LEN() 等)。如果需要基于日期月份、字符长度等动态条件求和,必须用 SUMPRODUCT。

举例:统计所有“3月份”的销售总额。

(1)SUMIFS 做法‌:

 =SUMIFS(E:E, MONTH(A:A), 2) → ‌报错‌,因为 MONTH(A:A) 不是有效的区域引用。

(2)SUMPRODUCT  做法‌:

=SUMPRODUCT((MONTH(A2:A22)=3) * E2:E22)

总结:如何选择?
特征
推荐函数
理由
‌简单多条件‌ (且关系)
‌SUMIFS‌
计算速度最快,语法清晰。
‌跨工作表/跨工作簿引用‌
‌SUMPRODUCT‌
避免链接更新错误,无需打开源文件即可计算。
‌包含“或”逻辑‌
‌SUMPRODUCT‌
用  + 号实现 OR 逻辑,无需多层嵌套。
‌条件涉及函数‌ (如MONTH)
‌SUMPRODUCT‌
支持在条件判断中直接使用函数处理数据。
‌多值批量汇总‌
‌SUMPRODUCT + SUMIFS‌
利用数组常量  { } 一次性计算多个条件的和。
‌数据量极大‌   (>10万行)
‌SUMIFS‌
SUMPRODUCT 是数组运算,大数据量下性能低于 SUMIFS。

使用建议:

在日常工作中,‌优先使用SUMIFS‌,因为它更高效、更易维护。

只有当 SUMIFS 无法满足需求(如跨表报错、需要OR逻辑、需要函数判断)时,再切换到 SUMPRODUCT。

掌握这两者的互补关系,就能解决Excel中99%的求和问题,大家快学起来吧!

#EXCEL技巧#sumproduct函数#sumifs函数#sumifs求和#职场干货

相关学习资料