Excel常用函数SUMIF和SUMIFS详解
一、SUMIF 和SUMIFS能干什么?
SUMIF用于“按单个条件求和”,SUMIFS用于“按多个条件求和”👉把满足某个条件的单元格对应的数据进行求和。简单点说就是如果满足条件,就把对应的数加起来。以下我们先讲SUMIF,SUMIF学会了,SUMIFS的用法也就水道渠成。
二、SUMIF 基本语法
先按部就班看看帮助文档中该函数的说明,与其他函数的用法一样首选先看帮助:
SUMIF(range, criteria, [sum_range])
函数有三个参数,分别解释如下:
参数 | 说明 |
range | 条件判断区域(用来判断是否满足条件) |
criteria | 条件(可以是数字、文本、表达式、通配符等) |
sum_range | 实际求和区域(可选) |
📌注意
- 求和区域是可选参数,如果省略,Excel 会对 range 本身求和。
- range 和 sum_range 行列数必须一致,也就是每一个条件范围必须是一列(或一行),且与求和范围形状一致。
三、条件示例
以下按不同格式的数据作为条件来举例逐一说明。
1、数字条件

=SUMIF(A1:A10, ">20", B1:B10)
✅含义:
条件含有比较符号时,条件用双引号包括。
常见比较符号及其含义如下:
符号 | 含义 |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
= | 等于 |
<> | 不等于 |
2、等于某个值

=SUMIF(A1:A10, 20, B1:B10)
✅ A 列等于20 的行,对 B 列求和
条件仅为数字时,意思是等于此数值,这里实际等同于双引号包括的形式”=20”。
四、文本条件
假设如下数据:

1️、精确匹配文本
以上数据要计算销售员如花的销售额总和,可以写成如下形式:

=SUMIF(B2:B9, "如花", C2:C9)
✅找到B2:B9中等于“如花”的所有行,计算C2:C9对应所有行的数值之和
📌文本不同于前面描述的数字,条件必须加双引号
2️、通配符条件
什么是通配符?通配符就是用特定的字符代表一个和多个字符,包含空字符,可以模糊匹配到相关的文本。通配符可以包含在文本的任意位置。
示例:

=SUMIF(B2:B9, "*如花", C2:C9)
✅所有姓名以“如花”为结尾都会被统计
= SUMIF(B2:B9, "张?花", C2:C9)
✅所有姓名以“张”开头,“花”结尾的人都会被统计,不管她叫“张如花”,还是“张秋花”。
其他情况依葫芦画瓢,在通配符所在的位置匹配零到多个字符的文本,这个不难理解。
五、引用单元格作为条件
有时候条件可能不是固定的数值或者文本,比如条件可能是与某一特定列的值进行比较,那么这里就涉及到条件中对于单元格对象的引用了。请看下面的示例:

我们假设在上面的数据中需要对销售额比销售目标高的数据进行求和。
❌常见错误写法:
=SUMIF(C2:C9, ">E2", C2:C9)
✅正确写法:
=SUMIF(C2:C9, ">"&E2, C2:C9)
📌规则:
当条件里包含比较符号 + 单元格引用,用 & 拼接,&是连接符。
进阶:有可能你的数据如下图所示,要求对每行的销售额比上月销售额高的数值进行求和,因为条件是个动态的,SUMIF有点力不从心,这就需要另外一个函数SUMPRODUCT出场了,当然这个不是本文的目的,先卖个关子,以后再讲。

不过公式写法还是先奉上:
=SUMPRODUCT((C2:C9>D2:D9)*C2:C9)
六、日期条件
如果要比较的条件是日期,条件有几种写法。我们还是以下面的数据为例。

1.使用DATE函数生成日期
DATE函数有三个参数,分别代表年、月、日。
以下公式就是对A列中日期在2018年2月19号及以后的销售额进行求和。
=SUMIF(A2:A9,">="&DATE(2018,2,19), C2:C9)
这个写法比较推荐。下面的几种形式仅供参考,不推荐。
2.直接使用日期表达式
=SUMIF(A2:A9, ">=2018-2-19", C2:C9)或者=SUMIF(A2:A9, ">=2018/2/19", C2:C9)
因为日期的存储本质就是数值,如果将日期格式调整为常规格式,可以看到一个数值。
公式中直接用这个数值也可以。比如以下形式也可以。
=SUMIF(A2:A9, ">=43150", C2:C9)
七、空值和非空值条件
条件也可以是空,这种条件可以用来统计空值和非空值单元格对应的数值和。
✅统计空单元格
✅统计非空单元格
八、SUMIFS 多条件求和函数
既然讲到了SUMIF,不得不提一下他的同门师兄SUMIFS,SUMIF只有一个条件,如果需要对满足多个条件的情况进行求和的话就得使用SUMIFS了。
先把两个函数作个对比:
函数 | 条件数量 | 适用场景 |
SUMIF | 1 个 | 简单条件 |
SUMIFS | 多个 | 实际工作首选 |
SUMIFS语法
SUMIF(sum_range, criteria_range1,criteria1,……)
函数有多个参数,分别解释如下:
参数 | 说明 |
sum_range | 需要求和的区域 |
criteria_range1 | 第1个条件的区域 |
criteria1 | 第1个条件区域对应的条件 |
criteria_range2 | 第2个条件的区域 |
criteria2 | 第2个条件区域对应的条件 |
…… | 以下依此类推…… |

SUMIFS 示例:
1.对名叫如花的人且销售额大于800的销售额进行求和。
=SUMIFS(C2:C9, B2:B9, "*如花", C2:C9, ">800")
2.对2019年全年的销售额进行求和。
=SUMIFS(C2:C9, A2:A9, ">="&DATE(2019,1,1), A2:A9, "<="&DATE(2019,12,31))
如果已经对SUMIF有很好的理解,SUMIFS用起来也不会有难处,在此不再举例。
九、SUMIFS 多条件的“或”操作技巧
前面讲到的SUMIFS的多个条件实际上是“与”的关系,就是所有条件全部满足的才求和。如果我们想要多个条件中只要有任意条件满足求和的就需要一些技巧。
方法一:多个SUMIF或者 SUMIFS 相加
注意两个条件不能重叠,否则会重复求和

比如要对姓张的销售员或者销售额小于800的销售额求和,公式如下:
=SUMIFS(C2:C9,B2:B9,"张*")+SUMIFS(C2:C9,C2:C9,"<800")
以上或的条件只有一个,也可以用SUMIF
=SUMIF(B2:B9,"张*",C2:C9)+SUMIF(C2:C9,"<800",C2:C9)
方法二:辅助列
因为增加辅助列需要用到其他的函数,同时增加了操作的复杂性,也偏离了本文的初衷。就不再继续展开了。
十、总结
“既生瑜,何生亮”。根据前面的学习,函数SUMIFS功能上完全可以代替函数SUMIF,但是在单个条件且条件区域与求和区域一致时可以省略求和区域的参数,这种条件下SUMIF写法简洁,所以也有它存在的意义吧。与这两兄弟有点关系的函数还有SUMPRODUCT和DSUM,后续再来一起学习,敬请关注。