在日常工作中,我们经常需要根据特定条件来计算总价。比如统计某个部门的所有商品总价、某个地区的订单总额等。如果先用筛选把数据筛出来再求和,步骤繁琐且效率不高。其实用SUMPRODUCT函数,一个公式就能完成条件判断和求和计算。
一、场景案例
下图是一张商品采购表,A列是部门,B列是商品名称,C列是单价,D列是数量。现在需要计算部门为「运营部」的所有商品总价。
二、操作步骤
在F2单元格输入以下公式,按回车确认即可:
=SUMPRODUCT((A2:A9="运营部") * C2:C9 * D2:D9)
不需要按Ctrl+Shift+Enter,直接回车就能得到正确结果。

三、公式拆解
| 部分 | 含义 |
|---|---|
| (A2:A9=”运营部”) | 判断A列每个单元格是否等于“运营部”,是则返回TRUE(相当于1),否则返回FALSE(相当于0) |
| C2:C9 | 单价列 |
| D2:D9 | 数量列 |
| * | 将三个数组对应位置相乘 |
计算逻辑:对于每一行数据,先用部门判断结果(1或0)乘以单价再乘以数量。如果部门是运营部,计算结果=单价×数量;如果不是运营部,计算结果=0。最后把所有结果相加,得到运营部的商品总价。
四、更多应用场景
单条件求和:统计“运营部”的采购总金额,公式如上。
多条件求和:统计“运营部”中“测试机”类别的商品总价,增加一个条件即可:
=SUMPRODUCT((A2:A9="运营部") * (B2:B9="测试机") * C2:C9 * D2:D9)

统计符合条件的记录条数:统计运营部有多少条采购记录:
=SUMPRODUCT((A2:A12="运营部") * 1)

五、使用注意
数据范围一致性:所有参数的行数必须相同,否则公式会返回错误值。如果数据区域有空白行,建议使用动态命名范围或超级表来避免行数不一致的问题。
六、总结
Excel按条件计算总价用SUMPRODUCT函数最直接。如果需要增加条件,可以直接在括号里乘上新条件,简单易操作。