「把销售表中北京地区的订单金额加起来」「统计1月份所有A类产品的销量总和」——这类需求在Excel和WPS表格中几乎每天都会遇到。很多人面对成百上千行数据,第一反应是一行一行手动加,或者筛选后看底部的求和结果。

需要更多WPS表格的函数教程和技巧?先看看 WPS教程首页 的完整文章列表,从零基础到高级公式都有。

其实WPS表格提供了专门的条件求和函数——SUMIF和SUMIFS,一个公式半秒钟就能解决上面所有问题。但这两个函数看似简单,实际用起来有许多陷阱:条件带引号还是不带引号?多条件的时候条件区域和求和区域怎么对应?为什么明明有数据,公式结果却是0?

本文用8个真实案例,从零带你彻底搞懂SUMIF和SUMIFS的全部用法。

SUMIF和SUMIFS的基础语法

写公式之前,先搞清楚这两个函数的区别:

函数用途条件数量求和区域位置
SUMIF单条件求和1个最后一个参数
SUMIFS多条件求和1~127个第一个参数

核心区别:SUMIF的求和区域在最后一个参数,SUMIFS的求和区域在第一个参数。这是最容易写错的地方。

SUMIF 语法

=SUMIF(条件区域, 条件, [求和区域])
  • 条件区域:用于判断条件的单元格范围(必填)
  • 条件:判断的标准,可以是数字、文本、表达式(必填)
  • 求和区域:实际求和的单元格范围(选填,省略时对条件区域本身求和)

SUMIFS 语法

=SUMIFS(求和区域, 条件区域1, 条件1, [条件区域2, 条件2], ...)
  • 求和区域:实际求和的单元格范围(必填,请注意它在第一个参数位置!)
  • 条件区域1:第一个条件的判断范围(必填)
  • 条件1:第一个条件的判断标准(必填)
  • 条件区域2, 条件2:后续条件对,最多支持127对

案例一:按类别统计销售额(SUMIF基础用法)

先看一个最常用的场景。假设你有一张销售明细表:

A列:产品类别B列:销售额
电子产品5000
家居用品3000
电子产品4500
服装2000
电子产品6000
家居用品3500

目标:计算「电子产品」的总销售额。

公式

=SUMIF(A:A, "电子产品", B:B)

公式解读

  • A:A:在A列中查找
  • "电子产品":查找条件是「等于电子产品」
  • B:B:找到后对B列对应行求和

结果:5000 + 4500 + 6000 = 15500

⚠️ 注意:条件是文本时必须用英文双引号包裹。写成 SUMIF(A:A, 电子产品, B:B) 会报错。

案例二:统计大于某个值的所有金额

除了等于,SUMIF还支持比较运算符。

场景:统计所有销售额大于4000元的记录总和。

公式

=SUMIF(B:B, ">4000")

这里省略了第三个参数(求和区域),WPS会默认对条件区域(B列)本身求和。

支持的比较运算符

运算符含义写法示例
=等于"=5000" 或直接 5000
>大于">4000"
<小于"<3000"
>=大于等于">=4000"
<=小于等于"<=3000"
<>不等于"<>电子产品"

⚠️ 比较运算符和数值要一起放在引号内,如 ">4000",不能写成 >4000

案例三:按销量排名统计销售额(引用单元格中的条件)

条件不一定要硬编码在公式中,也可以引用某个单元格的值。

场景:A列是产品名,B列是销量,C列是销售额。你想统计「销量大于100」的所有产品销售额总和。

公式

=SUMIF(B:B, ">100", C:C)

如果你把阈值放在D1单元格中(比如100),公式可以写成:

=SUMIF(B:B, ">" & D1, C:C)

">" & D1 的作用是将比较运算符「>」和D1单元格的值拼接起来,形成 ">100" 这样的条件字符串。这样你只需修改D1单元格的值,就能动态切换统计阈值,不需要每次改公式。

案例四:模糊条件匹配(通配符用法)

有时候条件不是精确匹配,而是「包含某个关键词」。

场景:A列是产品全称(如「苹果iPhone 15」「华为Mate 60 Pro」「小米14 Ultra」),你想统计所有包含「苹果」的产品销售额。

公式

=SUMIF(A:A, "*苹果*", B:B)

WPS表格支持两种通配符:

通配符含义示例
*代表任意多个字符"*苹果*" 匹配任何包含「苹果」的文本
?代表单个任意字符"A???" 匹配以A开头的4个字符的文本

常见模糊条件写法

  • 以「华为」开头:"华为*"
  • 以「Pro」结尾:"*Pro"
  • 包含「WPS」:"*WPS*"
  • 第3个字符是「电」:"??电*"

案例五:多条件求和(SUMIFS的经典使用场景)

现在来看SUMIFS——多条件求和的场景。

数据表结构

A列:日期B列:地区C列:产品D列:金额
2026-01-05北京A产品5000
2026-01-08上海B产品3000
2026-01-15北京A产品4500
2026-01-20广州C产品2000
2026-01-25北京B产品6000

目标:统计「北京地区A产品」的总金额。

公式

=SUMIFS(D:D, B:B, "北京", C:C, "A产品")

公式解读

  • D:D:求和区域(金额列)——注意在第一个参数
  • B:B, "北京":条件1——地区列等于「北京」
  • C:C, "A产品":条件2——产品列等于「A产品」

结果:5000 + 4500 = 9500

📌 这就是SUMIF和SUMIFS最核心的区别:SUMIF的求和区域在最后一个参数,SUMIFS的求和区域在第一个参数。混用的话公式会出错。

案例六:按日期范围统计(日期条件求和)

这是财务和销售统计中最常见的需求——按月份、季度或自定义日期范围统计。

场景:统计2026年1月1日到2026年1月31日期间的总金额。

公式

=SUMIFS(D:D, A:A, ">=2026-01-01", A:A, "<=2026-01-31")

公式解读

  • 两个条件都作用于同一个列(A列,日期列)
  • 条件1:日期 >= 2026-01-01
  • 条件2:日期 <= 2026-01-31

如果你把开始日期和结束日期分别放在F1和G1单元格

=SUMIFS(D:D, A:A, ">=" & F1, A:A, "<=" & G1)

这样只需要修改F1和G1的值,就能快速切换统计的时间范围,非常方便。

案例七:排除特定值的求和

有时候你需要统计「除了某个值以外的总和」。

场景:统计除了「广州」以外所有地区的总金额。

公式(用SUMIF):

=SUMIF(B:B, "<>广州", D:D)

公式(用SUMIFS,排除多个地区):

=SUMIFS(D:D, B:B, "<>北京", B:B, "<>广州")

案例八:空白和非空白单元格的条件求和

除了具体值,SUMIF/SUMIFS还可以基于单元格是否为空来判断。

统计所有已填地区的金额(地区不为空):

=SUMIF(B:B, "<>", D:D)

统计所有未填地区的金额(地区为空):

=SUMIF(B:B, "", D:D)

这两个用法在数据清洗和异常检测中非常有用——比如快速计算有多少条记录的必填字段没有填写。

SUMIF/SUMIFS函数常见错误排查

公式写了但结果不对?下面覆盖了5种最常见的错误情况。

错误一:#VALUE! 错误

现象:公式返回 #VALUE!

原因:SUMIFS的条件区域和求和区域的行数不一致。

错误示例

=SUMIFS(D2:D100, B2:B200, "北京", C2:C100, "A产品")

B列是200行,但D列和C列只选了100行。

正确写法:确保所有区域的行数一致。

=SUMIFS(D2:D100, B2:B100, "北京", C2:C100, "A产品")

错误二:结果为0(明明有符合条件的数据)

现象:肉眼看到表里有符合条件的数据,但SUMIF返回了0。

原因1:数字以文本格式存储。检查方法:选中数字列 → 看单元格左上角是否有绿色小三角 → 如果有,说明数字被存成了文本。

解决方案:选中文本数字区域 → 点击出现的感叹号图标 → 「转换为数字」。

原因2:条件文本有多余的空格。比如数据是 "北京",但条件写的是 "北京 "(末尾多一个空格)。这肉眼看不出来,但计算机认为是两个不同的值。

解决方案:使用TRIM函数清理数据,或检查条件中的空格。

错误三:通配符没有生效

现象:写了 "*苹果*" 作为条件,但返回结果是0。

原因:通配符 * 只对文本类型生效。如果条件区域中是数字或日期,通配符不会匹配。

解决方案:确保条件区域的数据格式是文本。如果要从数字中匹配,改用比较运算符(如 ">5000")。

错误四:SUMIF多重条件误区

现象:想同时满足多个条件,用了SUMIF却不对。

错误写法

=SUMIF(A:A, "北京", B:B) + SUMIF(A:A, "上海", B:B)

这个公式求的是「北京 上海」的金额总和(并集),而不是「既在北京又在上海」(交集)。如果你想要「北京地区A产品」这种交集条件,应该用SUMIFS。

错误五:日期条件写了但不生效

现象:公式 =SUMIFS(D:D, A:A, ">2026-01-01") 返回错误或0。

原因:日期比较在WPS中需要用标准日期格式。直接用字符串比较可能不准确——这取决于A列中日期是文本格式还是真正的日期格式。

解决方案:如果日期存在单元格E1(格式为真正的日期),用:

=SUMIFS(D:D, A:A, ">" & E1)

这样WPS会自动处理日期比较,不会出错。

SUMIF vs SUMIFS vs SUMPRODUCT:什么时候用哪个?

函数适用场景优点缺点
SUMIF单一条件求和语法简单,计算快只能一个条件
SUMIFS多条件求和支持最多127个条件求和区域在第一个参数,容易写错
SUMPRODUCT复杂多条件、需要运算的条件功能最强大,条件可以是公式语法复杂,大数据量时较慢

简单决策原则

  • 一个条件 → SUMIF
  • 多个条件 → SUMIFS
  • 条件需要计算(比如金额乘以折扣率后再求和)→ SUMPRODUCT

SUMIF/SUMIFS的最佳实践建议

1. 尽量使用整列引用而不是固定范围

  • ✅ 推荐:=SUMIF(A:A, "北京", D:D)
  • ❌ 不推荐:=SUMIF(A2:A500, "北京", D2:D500)

整列引用(A:A)的好处是数据增加时不需要修改公式。WPS表格会自动忽略空白单元格,不会影响性能。

2. 条件值放在单元格中而不是硬编码

把「北京」「5000」这样的条件值写在单独的单元格(如F1)中,公式引用F1。这样条件变了只需修改单元格,不用翻找公式。

3. 用命名区域提高公式可读性

给A列(地区)命名为「地区」,D列(金额)命名为「金额」:

=SUMIFS(金额, 地区, "北京", 产品, "A产品")

=SUMIFS(D:D, A:A, "北京", C:C, "A产品") 好理解得多。

4. 验证结果

写完公式后,建议用筛选功能手动验证一下:筛选出符合条件的行 → 选中金额列 → 看底部状态栏的求和数值 → 比对公式结果。不一致就排查上面列出的常见错误。

这篇教程之后建议你看

掌握SUMIF和SUMIFS后,以下WPS表格教程可以帮你进一步成为表格高手:

数据分析可视化方面的教程:

常见问题

Q1: SUMIF和SUMIFS有什么区别?什么时候用哪个?

SUMIF用于单条件求和(1个条件),语法为 `=SUMIF(条件区域, 条件, [求和区域])`;SUMIFS用于多条件求和(1~127个条件),语法为 `=SUMIFS(求和区域, 条件区域1, 条件1, 条件区域2, 条件2, ...)`。关键区别是求和区域的位置不同——SUMIF在最后一个参数,SUMIFS在第一个参数,这是最常见的写错原因。简单原则:一个条件用SUMIF,多个条件用SUMIFS。

Q2: SUMIF结果为0怎么办?数据表里明明有符合条件的行。

90%的情况是因为①数字被存成了文本格式(检查单元格是否有绿色小三角);②条件文本有多余空格(如数据是"北京"但条件写了"北京 ");③条件区域的数据类型与条件不匹配(如条件写的是文本,实际是数字)。排查步骤:先用筛选功能确认确实存在符合条件的行→检查数据列的格式→用TRIM清理空格→尝试将条件放在单元格中引用而非硬编码。

Q3: SUMIF中的通配符*和?怎么用?

星号(*)代表任意多个字符,问号(?)代表单个字符。例如:`"*苹果*"`匹配任何包含"苹果"的文本;`"华为*"`匹配以"华为"开头的文本;`"??A*"`匹配第三个字符是A的文本。通配符只对文本类型生效,对数字和日期无效。如果通配符没生效,检查条件区域的数据格式是否为文本。

Q4: 多条件下SUMIFS条件区域大小不一致会怎样?

会返回 #VALUE! 错误。SUMIFS要求所有条件区域和求和区域的行数完全一致。例如 `=SUMIFS(D2:D100, B2:B200, "北京", C2:C100, "A产品")` 会报错,因为B列范围是200行而D和C列只有100行。修改为统一范围即可:`=SUMIFS(D2:D100, B2:B100, "北京", C2:C100, "A产品")`。

Q5: 如何用SUMIFS统计某个日期范围内的数据?

假设日期在A列,金额在D列,统计2026年1月的数据:=SUMIFS(D:D, A:A, ">=2026-01-01", A:A, "<=2026-01-31")。如果开始和结束日期放在F1和G1单元格,公式为:=SUMIFS(D:D, A:A, ">=" & F1, A:A, "<=" & G1)。使用单元格引用比硬编码日期更灵活,切换统计月份只需改F1和G1的值。

Q6: SUMIFS最多支持多少个条件?

在WPS Office 2023及之后版本中,SUMIFS最多支持**127对条件**(即127个条件范围和127个条件的组合)。对于99.9%的实际使用场景来说完全够用。如果确实需要超过127个条件,可以考虑使用SUMPRODUCT函数替代,或者将条件分到多个单元格中用SUMIFS分段求和后相加。

总结

SUMIF和SUMIFS是WPS表格中使用频率最高的统计函数之一。记住三个要点:单条件用SUMIF、多条件用SUMIFS、SUMIFS的求和区域在第一个参数。掌握了这三个点,加上本文中的8个实际案例,应付日常工作中的条件求和需求绰绰有余。

下次老板让你「把这个月各区域的销售额汇总一下」,别再用筛选+手动加总了——一个SUMIFS公式,两秒钟搞定。