SUMIF函数教程:按条件求和,再也不用手动加总了
SUMIF函数保姆级教程:按条件求和,再也不用手动加总了
做Excel 效率工具数据统计的时候,你一定遇到过这样的需求:一张几百行的销售表,要算出"手机"这个品类一共卖了多少钱;或者要算出"华东区"的总销售额;或者要统计工资大于8000的员工有多少人、总工资多少。
这时候如果一行行筛选、手动加总,数据量大的时候不仅慢,还容易出错。但如果你会用SUMIF,一秒钟就能得出结果。
SUMIF是Excel里仅次于办公效率工具的第二常用函数,也是数据统计的必备技能。今天用一篇文章把它讲透,从基础语法到多条件高级用法,看完就能上手。
一、SUMIF是什么?一句话讲明白
SUMIF的全称是Sum If(满足条件就求和),它的作用简单说就是:在一个范围内,找出满足某个条件的行,然后把对应的数据加起来。
举个最直观的例子:你有一张销售明细表,里面有产品名称、区域、销售额三列。现在你想知道"手机"这个产品总共卖了多少钱。
用SUMIF的话,就是告诉Excel:你去产品名称列里找所有写着"手机"的行,找到以后把对应行的销售额加起来,告诉我总数。

你可能会说,用筛选功能不也一样吗?确实可以,但有两个问题:第一,筛选是一次性操作,数据更新了还要重新筛;第二,如果要同时统计10个产品的销售额,你得筛10次,SUMIF写一个公式下拉10行就搞定了。
SUMIF的优势就是快、可复用、零出错。公式写好以后,不管数据怎么更新,结果都是自动计算的。
二、SUMIF的语法:三个参数搞懂它
SUMIF的公式结构是这样的:
=SUMIF(条件范围, 条件, 求和范围)
三个参数,一个都不能少。我们一个一个来拆:
参数1:条件范围(Range)
你要在哪里判断条件。 就是你要用来筛选条件的那一列数据。比如你要按产品名称筛选,条件范围就是产品名称列;你要按区域筛选,条件范围就是区域列。
参数2:条件(Criteria)
满足什么条件才算。 可以是具体的数值、文本,也可以是表达式。比如"手机"、">8000"、"=A2"(引用单元格)都是合法的条件。
参数3:求和范围(Sum_range)
满足条件后,把哪一列的数加起来。 就是你要求和的数值列。比如你要算总销售额,求和范围就是销售额列;你要算总工资,求和范围就是工资列。
一个小知识点: 如果条件范围和求和范围是同一列(比如求大于100的数字之和),第三个参数可以省略。但新手建议三个参数都写上,不容易搞混。
三、手把手实操:第一次用SUMIF
光说不练假把式,我们用一个实际例子来走一遍。假设你有这样一张销售表:
| 产品名称 | 销售区域 | 销售额 |
|---|---|---|
| 手机 | 华东 | 5000 |
| 电脑 | 华北 | 8000 |
| 手机 | 华南 | 6000 |
| 平板 | 华东 | 3000 |
| 手机 | 华北 | 4500 |
| 电脑 | 华东 | 7500 |
现在要算"手机"的总销售额是多少。
第一步:选中要填结果的单元格 点击一个空白单元格,比如E2。
第二步:输入公式 输入以下公式:
=SUMIF(A:A, "手机", C:C)
我们来拆解一下: - A:A:在A列(产品名称列)里判断条件 - "手机":条件是等于"手机" - C:C:满足条件的话,把C列(销售额列)加起来
第三步:按回车确认 按下Enter,E2单元格立刻显示出15500(5000+6000+4500)。是不是一秒出结果?
就这么简单,三步搞定。比你手动筛选加总快了不知道多少倍。
四、5种最常用的条件写法
SUMIF的第二个参数(条件)玩法非常多,不同的条件写法能实现不同的统计效果。下面是5种最常用的,直接套就行。
1. 等于某个值
最简单的用法,等于某个文本或数值。
=SUMIF(A:A, "手机", C:C)
注意:文本条件要用英文双引号括起来。数值可以不加引号,但加了也没问题。
2. 大于/小于某个值
统计大于或小于某个数值的总和。
=SUMIF(C:C, ">5000", C:C)
这个公式的意思是:C列中大于5000的数值加起来。大于等于就写">=5000",小于就是"<5000"。
3. 不等于某个值
排除某个值后的总和。
=SUMIF(A:A, "<>手机", C:C)
"<>"就是不等于的意思。上面的公式表示:产品名称不是"手机"的所有销售额之和。
4. 模糊匹配(包含某个关键词)
用通配符*可以做模糊匹配,只要包含指定文字就算。
=SUMIF(A:A, "*手机*", C:C)
这个公式会匹配"手机""智能手机""手机壳"等所有包含"手机"字样的产品。
*还可以放在不同位置:
- "手机*":以"手机"开头的
- "*手机":以"手机"结尾的
- "*手机*":包含"手机"的
5. 引用单元格作为条件
条件也可以不是写死的,而是引用另一个单元格的值。
=SUMIF(A:A, E2, C:C)
E2单元格里写着"手机",公式就会按"手机"来统计。改E2里的值,结果自动跟着变。
这个用法特别实用:你在旁边列一个产品清单,写好公式往下一拖,所有产品的销售额就都统计好了,根本不用一个个改公式。
五、绝对引用$:下拉填充不翻车
刚才说的引用单元格的用法,往下拖公式的时候,同样会遇到和VLOOKUP一样的问题:条件范围和求和范围会跟着偏移。
解决方法也是一样的:加$锁定。
=SUMIF($A:$A, E2, $C:$C)
$A:$A和$C:$C:列号锁定,下拉的时候不会变- E2:不加$,跟着往下走,依次引用E3、E4、E5
这样你把公式从E2往下拖到E10,就可以一次性统计出10个产品各自的总销售额,效率拉满。
快速加$的方法:选中公式里的范围,按F4键自动切换引用方式。
六、进阶:多条件求和用SUMIFS
SUMIF只能设置一个条件,但实际工作中经常需要多条件统计。比如"华东区的手机销售额是多少"——既要产品是手机,又要区域是华东,两个条件同时满足。
这时候就要用SUMIFS,它是SUMIF的多条件版本。

SUMIFS的语法
=SUMIFS(求和范围, 条件范围1, 条件1, 条件范围2, 条件2, ...)
注意一个容易搞混的地方:SUMIF是条件范围在前、求和范围在后;SUMIFS反过来了,求和范围在最前面,然后才是条件范围+条件。很多人学混了,写公式经常参数顺序搞反。
举个例子
统计"华东区"的"手机"销售额:
=SUMIFS(C:C, A:A, "手机", B:B, "华东")
拆解一下: - C:C:要求和的是销售额列 - A:A, "手机":第一个条件,产品名称等于手机 - B:B, "华东":第二个条件,销售区域等于华东
两个条件是"且"的关系,必须同时满足才算。
SUMIFS最多支持127个条件,日常工作绝对够用了。而且你只有一个条件的时候,也可以用SUMIFS来写,语法统一不容易搞混。
七、常见错误及解决方法
SUMIF虽然简单,但新手也经常踩坑。下面是4个最常见的问题:
错误1:结果是0,明明有数据
最常见的原因是条件范围和求和范围的行数不一致。比如条件范围选了A1:A100,求和范围却选了C2:C101,差了一行,结果就会错。
解决方法: 两个范围的起始行和结束行要一致。最保险的写法是直接选整列(A:A、C:C)。
错误2:文本型数字匹配不上
条件范围里的数字是文本格式,条件写的是数值,或者反过来,导致匹配不上。
解决方法: 统一格式。选中数据列,点左上角的黄色感叹号,选择"转换为数字"即可。
错误3:中文引号导致报错
条件里的文本用了中文引号"手机"(全角),Excel识别不了,返回错误值。
解决方法: 所有标点都用英文半角。公式里的引号、逗号、括号,全部是英文状态下输入的。
错误4:SUMIFS参数顺序搞反
刚学SUMIFS的时候,很容易受SUMIF影响,把条件范围写在前面。
解决方法: 记一个口诀——"求和先写",SUMIFS第一个参数永远是求和范围。
八、3个实战场景,直接套用
说了这么多,给你列3个最常见的实战场景,遇到直接套公式:
场景1:按部门统计工资总额 工资表有姓名、部门、工资三列,统计每个部门的工资总和。
=SUMIF(B:B, "技术部", C:C)
旁边列好部门清单,写一个公式下拉,所有部门的工资总额一秒出结果。
场景2:统计大于某个金额的订单总和 销售表里要算出金额大于1万的订单总共有多少。
=SUMIF(C:C, ">10000", C:C)
条件和求和都是同一列,第三个参数也可以省略,写成=SUMIF(C:C, ">10000")也行。
场景3:多条件组合统计 要算"华东区""手机"品类中,销售额大于5000的订单总和。
=SUMIFS(C:C, A:A, "手机", B:B, "华东", C:C, ">5000")
三个条件同时满足,SUMIFS直接搞定。
写在最后
SUMIF和SUMIFS是Excel数据统计的基石。学会了这两个函数,再加上之前学的VLOOKUP,日常工作中80%的Excel问题都能解决。
很多人觉得函数难学,其实就是一个习惯问题。一开始可能要翻笔记、查教程,写多了以后,手指比脑子反应还快,条件反射式地就把公式敲出来了。
今天花10分钟看完,打开Excel跟着练一遍。下周做月报的时候,你就能比同事早半小时下班。
最后同样给你一个口诀:
在哪找,找什么,加哪列。 多条件的话,先加列,后条件。
下一篇我们来讲Excel里的"数据透视表",这玩意儿才是真正的大杀器,几秒钟搞定别人半小时的统计工作。关注我,别错过。
作者:沈未迟
来源说明:本文首发于微信公众号「效率小本本」,经整理优化后发布于 DevToolHub。