Excel万能求和函数:SUMPRODUCT 函数的使用教程
SUMPRODUCT 函数是 Excel 中一个功能强大的函数,不仅能够完成普通的求和操作,还可以处理多维数据的加权求和、条件求和等复杂场景,被誉为“万能求和函数”。相比 SUM 函数,SUMPRODUCT 不仅支持简单求和,还可以结合条件和数组运算实现更复杂的数据处理需求,是数据分析和自动化处理的利器。本教程将带您详细了解 SUMPRODUCT 的语法及使用技巧。
一、SUMPRODUCT 函数的基本语法
SUMPRODUCT(array1, [array2], ...)
参数解释:
-
array1:必填,参与计算的第一个数组或范围。
-
array2, ...:可选,参与计算的其他数组或范围。
功能描述:
-
将对应数组(或范围)中的元素逐一相乘。
-
对所有乘积的结果进行求和。
二、SUMPRODUCT 函数的核心特点
-
自动处理数组:无需按常规数组公式操作(如按
Ctrl + Shift + Enter
)。 -
支持多条件运算:可以轻松实现条件筛选后的求和。
-
适用场景广泛:加权平均、条件求和、交叉求和等都可以通过 SUMPRODUCT 实现。
三、SUMPRODUCT 的基础用法
示例 1:简单数组相乘求和
假设有两组数据:
-
A列:单位数量(如:2, 3, 5)。
-
B列:单位价格(如:10, 15, 20)。
公式:
=SUMPRODUCT(A1:A3, B1:B3)
解读:
-
对应元素相乘:
-
2×10 = 20
-
3×15 = 45
-
5×20 = 100
-
-
对乘积求和:
-
20 + 45 + 100 = 165
-
四、SUMPRODUCT 的高级用法
1. 加权平均计算
场景:计算学生成绩时,某些科目占的权重不同(如语文30%、数学50%、英语20%)。
公式:
=SUMPRODUCT(分数范围, 权重范围)
注意:权重范围的总和应为1(即100%)。
2. 单条件求和
场景:统计销售额中大于100的订单总额。
公式:
=SUMPRODUCT((销售额范围>100)*销售额范围)
解读:
-
(销售额范围>100)
返回布尔值(TRUE/FALSE
)。 -
布尔值自动转换为1(
TRUE
)或0(FALSE
)。 -
有效值为
1
的对应单元格才参与求和。
3. 多条件求和
场景:统计符合某产品类别且销售额大于100的总额。
公式:
=SUMPRODUCT((类别范围="目标类别")*(销售额范围>100)*销售额范围)
解读:
-
(类别范围="目标类别")
和(销售额范围>100)
返回布尔值数组。 -
每个条件的布尔值数组相乘,最终形成“符合条件”的标记。
-
只有符合条件的值参与最终的求和计算。
4. 条件计数
场景:统计某产品类别的订单数量。
公式:
=SUMPRODUCT(--(类别范围="目标类别"))
解读:
-
(类别范围="目标类别")
返回布尔值数组。 -
--
强制将布尔值转换为数字(1/0
)。 -
对转换后的结果进行求和,即计数。
5. 统计不重复个数
场景:统计一个范围内的不重复值个数。
公式:
=SUMPRODUCT(1/COUNTIF(范围, 范围))
解读:
-
COUNTIF(范围, 范围)
计算范围内每个值的出现次数,返回一个数组。 -
1/COUNTIF(范围, 范围)
将每个值的出现次数取倒数,重复值的贡献小于1。 -
SUMPRODUCT
对这些倒数求和,即不重复值的个数。
五、SUMPRODUCT 的注意事项
-
数组大小一致:
-
所有数组的大小必须相同,否则会返回错误值
#VALUE!
。
-
-
支持逻辑运算:
-
通过使用
*
或--
组合逻辑条件,可实现复杂的数据筛选。
-
-
慎用单元格引用错误:
-
如果引用了空单元格,可能导致计算错误或结果不正确。
-
六、SUMPRODUCT 的常见技巧
技巧 1:动态加权平均
通过将权重和数据动态设置为命名区域,随数据变动自动更新结果。
技巧 2:用于条件格式设置
可以配合 条件格式,对特定条件的数据进行高亮显示。例如:对某范围内大于平均值的数据应用颜色格式。
七、总结
SUMPRODUCT 函数以其强大的数组处理能力,成为 Excel 中一个极为灵活的函数。无论是简单的求和,还是复杂的条件运算,SUMPRODUCT 都能高效解决。学会运用这个函数,能显著提升您的 Excel 数据处理效率。