条件计算——IF、SUMIFS、COUNTIFS 的 AI 用法
第4章:条件计算函数
从"把所有数字加起来"到"只加满足条件的数字",这一步的跨越让 Excel 从计算器变成了真正的数据分析工具。条件函数家族——IF、SUMIF、COUNTIF、AVERAGEIF、MAXIFS——是职场 Excel 使用频率最高的一批函数,也是用 AI 辅助写公式收益最大的场景之一。
条件计算的本质:从"全部"到"按条件"
想象你是一家连锁超市的运营经理,手头有一张 5000 行的销售记录表,记录着每笔交易的门店、日期、商品类别、销售额。你需要回答这些问题:
- 北京门店上个月的总销售额是多少?
- 饮料类商品卖出了几单?
- 华东区所有门店的平均客单价是多少?
- 各门店中,哪家的单日最高销售额最高?
这些问题有一个共同点:不是对全部数据做计算,而是先按条件筛选,再计算。
这就是条件函数存在的意义。它们把"筛选"和"计算"合并成一步,让你不需要先手动筛选、再求和,而是直接用一个公式搞定。
条件函数的逻辑结构
所有条件函数都遵循同一个底层逻辑:
在"条件范围"中,找到满足"条件"的行 → 对这些行的"计算范围"执行"计算操作"
具体到不同函数:
- SUMIF:满足条件 → 求和
- COUNTIF:满足条件 → 计数
- AVERAGEIF:满足条件 → 求平均
- MAXIFS / MINIFS:满足条件 → 求最大/最小值
- IF:满足条件 → 返回值A,否则返回值B
理解了这个逻辑,你就能快速举一反三。接下来我们逐一深入。
ℹ️ Note
关于 AI 辅助写条件公式:
条件函数是 AI 写公式表现最好的场景之一。原因很简单:条件描述本来就是人类语言("部门是销售部的员工工资总和"),AI 能直接把这句话翻译成公式。本章每个案例都配有完整的 AI Prompt,可以直接复制使用。
IF 与 IFS 函数:逻辑判断的核心
IF 函数:一个条件,两个结果
IF 是 Excel 中使用频率最高的函数之一,语法极简:
=IF(条件, 条件为真时的结果, 条件为假时的结果)
示例:
=IF(A2>=100000, "达标", "未达标")
=IF(B2="是", 200, 0)
=IF(C2>=60, "通过", "不通过")
IF 的三个参数:
- 第1参数(条件):一个返回 TRUE 或 FALSE 的表达式,如 A2>100、B2="北京"、C2<>""
- 第2参数(真值):条件成立时返回的内容,可以是数字、文字、公式
- 第3参数(假值):条件不成立时返回的内容,可以省略(省略时返回 FALSE)
嵌套 IF:多个条件的传统写法
当需要判断 3 个或以上等级时,可以嵌套 IF:
=IF(A2>=90, "优", IF(A2>=80, "良", IF(A2>=70, "中", "不及格")))
理解方式:从左到右逐层判断
- 先看是否 >=90,是则返回"优"
- 不是则看是否 >=80,是则返回"良"
- 不是则看是否 >=70,是则返回"中"
- 都不满足,返回"不及格"
嵌套 IF 最多可以套 64 层(实际上超过 3-4 层就很难读懂了),这就是 IFS 诞生的原因。
IFS 函数:多条件更简洁(Excel 2019+ / Microsoft 365)
=IFS(条件1, 结果1, 条件2, 结果2, 条件3, 结果3, ...)
等级判断改写为 IFS:
=IFS(A2>=90,"优", A2>=80,"良", A2>=70,"中", TRUE,"不及格")
注意:最后的 TRUE 是"兜底条件",表示以上都不满足时执行
IFS 与嵌套 IF 的对比:
- IFS 更扁平,条件和结果一一对应,逻辑清晰
- IFS 需要 Excel 2019 或 Microsoft 365,旧版本不支持
- 两者功能等价,选择哪个取决于你的 Excel 版本
6个职场案例
案例1:业绩达标判断 场景:销售表A列是销售员姓名,B列是本月销售额,C列需要显示"达标"或"未达标"(达标线:10万元)
帮我写个IF公式判断销售是否达标
案例2:成绩等级划分 场景:A列是学生成绩(0-100分),B列需要显示等级:90分及以上→优,80-89→良,70-79→中,70分以下→不及格
案例3:提成阶梯计算 场景:销售员提成按销售额阶梯计算:10万以下→5%,10-30万→8%,30-50万→10%,50万以上→12%。B列是销售额,C列计算提成金额。
案例4:多条件判断(部门+职级) 场景:A列部门,B列职级,C列判断是否有资格参加高管培训:销售部的经理及以上 → "有资格",否则 → "无资格"
案例5:IF + AND / OR 组合 场景:A列是考勤天数,B列是月度评分(1-5分),C列判断奖金资格:出勤>=22天 且 评分>=4分 → 有奖金;或者 评分=5分(单独满足也可以) → 有奖金;否则 → 无奖金
案例6:IFS 替代多层嵌套 IF 场景:A列是客户评级(1-5星),根据评级给出不同的折扣率:5星→9折,4星→9.2折,3星→9.5折,2星→9.8折,1星→无折扣(原价)
AI调试:让 AI 修复你的 IF 逻辑错误
IF 公式最常见的错误类型:
- 条件顺序错误:嵌套 IF 中先判断小值,导致大值被错误匹配
- 引号缺失:文字条件忘记加引号(应写 "销售部",不是 销售部)
- 逻辑混淆:AND/OR 用错,或者嵌套层次混乱
我的IF公式有问题,帮我找出错误原因:
公式:=IF(A2>=70,"中",IF(A2>=80,"良",IF(A2>=90,"优","不及格")))
问题:90分的学生显示"中"而不是"优"
数据:A2=92,期望结果"优",实际结果"中"
请解释为什么错了,并给出修正公式。
SUMIF 与 SUMIFS:按条件求和
SUMIF 语法:单条件求和
=SUMIF(条件范围, 条件, 求和范围)
参数说明:
- 条件范围:在哪一列/区域查找条件(如部门列 A:A)
- 条件:匹配什么(如 "销售部"、">1000"、E2)
- 求和范围:满足条件的行,对应哪一列做求和(如工资列 C:C)
示例:统计销售部的工资总和
=SUMIF(A:A, "销售部", C:C)
SUMIFS 语法:多条件求和
=SUMIFS(求和范围, 条件范围1, 条件1, 条件范围2, 条件2, ...)
注意:SUMIFS 和 SUMIF 的参数顺序不同!
- SUMIF:条件范围, 条件, 求和范围(求和范围在最后)
- SUMIFS:求和范围在最前,然后才是条件范围+条件的配对
示例:统计销售部2024年1月的工资总和
=SUMIFS(C:C, A:A, "销售部", B:B, "2024-01")
⚠️ Warning
**常见错误:**把 SUMIF 的参数顺序用到 SUMIFS 上——记住,SUMIFS 的求和范围在最前!
SUMIF案例1:按部门汇总工资 场景:A列部门,B列员工姓名,C列工资,E2是要查询的部门名称,F2要显示该部门工资总和
SUMIF案例2:按月份汇总销售额 场景:A列是日期(格式:2024/3/15),B列是销售额,要汇总2024年3月的总销售额
SUMIF案例3:产品类别+区域的双条件销售额 场景:A列产品类别,B列销售区域,C列销售额。统计"饮料"在"华东区"的总销售额。
SUMIF案例4:大于某值的数据求和 场景:A列是订单金额,统计订单金额超过5000元的订单总额
SUMIF案例5:模糊条件(含"北京"的所有区域) 场景:A列区域名称可能是"北京朝阳"、"北京海淀"、"北京西城"等,要汇总所有包含"北京"的区域销售额(B列)
COUNTIF 与 COUNTIFS:按条件计数
语法说明
COUNTIF(单条件计数):
=COUNTIF(条件范围, 条件)
COUNTIFS(多条件计数):
=COUNTIFS(条件范围1, 条件1, 条件范围2, 条件2, ...)
COUNTIF 没有"求和范围"参数,因为它只计数(数有多少行满足条件)
COUNTIF案例1:统计各部门人数 场景:A列是部门,要统计销售部有多少人
COUNTIF案例2:统计重复值个数 场景:A列是订单号,找出哪些订单号出现了不止一次(重复),在B列显示该订单号出现的次数
COUNTIF案例3:统计某日期范围内的记录数 场景:A列是入职日期,统计2024年内入职的员工人数
COUNTIF案例4:不重复计数(COUNTIF妙用) 场景:A列是客户名称(有大量重复),统计共有多少个不重复的客户
AVERAGEIF 与 AVERAGEIFS:按条件求平均
语法说明
AVERAGEIF(单条件平均):
=AVERAGEIF(条件范围, 条件, 平均值范围)
AVERAGEIFS(多条件平均):
=AVERAGEIFS(平均值范围, 条件范围1, 条件1, 条件范围2, 条件2, ...)
注意:与 SUMIFS 一样,AVERAGEIFS 的"平均值范围"在最前面
AVERAGEIF案例1:按地区计算平均客单价 场景:A列地区,B列客单价(元),计算华南区的平均客单价
AVERAGEIF案例2:按产品类别计算平均利润率 场景:A列产品名称,B列利润率,计算所有电子类产品(A列包含"电子")的平均利润率
AVERAGEIF案例3:多条件平均(地区+产品类别) 场景:A列地区,B列产品类别,C列销售额,计算华东区饮料类的平均销售额
MAXIFS 和 MINIFS:按条件求最大最小值
语法说明(Excel 2019+ / Microsoft 365)
=MAXIFS(最大值范围, 条件范围1, 条件1, ...)
=MINIFS(最小值范围, 条件范围1, 条件1, ...)
旧版本Excel替代方案(数组公式,需 Ctrl+Shift+Enter):
{=MAX(IF(A2:A1000="销售部", C2:C1000))}
{=MIN(IF(A2:A1000="销售部", C2:C1000))}
MAXIFS案例1:各部门最高工资 场景:A列部门,C列工资,E2是部门名称,F2要显示该部门最高工资
MINIFS案例2:各产品最低售价 场景:A列产品名称,B列售价,找出每种产品的最低售价(用于竞价监控)
条件函数速查表 + AI Prompt 模板汇总
函数速查表
| 函数 | 作用 | 语法要点 | 最低版本 |
|---|---|---|---|
| IF | 单条件判断返回不同值 | =IF(条件, 真值, 假值) | 所有版本 |
| IFS | 多条件判断(替代嵌套IF) | =IFS(条件1,值1,条件2,值2,...,TRUE,兜底值) | Excel 2019+ |
| SUMIF | 单条件求和 | =SUMIF(条件范围, 条件, 求和范围) | 所有版本 |
| SUMIFS | 多条件求和 | =SUMIFS(求和范围, 条件范围1, 条件1, ...) | Excel 2007+ |
| COUNTIF | 单条件计数 | =COUNTIF(条件范围, 条件) | 所有版本 |
| COUNTIFS | 多条件计数 | =COUNTIFS(条件范围1, 条件1, ...) | Excel 2007+ |
| AVERAGEIF | 单条件求平均 | =AVERAGEIF(条件范围, 条件, 平均范围) | Excel 2007+ |
| AVERAGEIFS | 多条件求平均 | =AVERAGEIFS(平均范围, 条件范围1, 条件1, ...) | Excel 2007+ |
| MAXIFS | 多条件求最大值 | =MAXIFS(最大范围, 条件范围1, 条件1, ...) | Excel 2019+ |
| MINIFS | 多条件求最小值 | =MINIFS(最小范围, 条件范围1, 条件1, ...) | Excel 2019+ |
AI Prompt 模板汇总
✅ Tip
本章核心总结:
IF 系列处理"判断逻辑",SUMIF/COUNTIF/AVERAGEIF/MAXIFS 处理"条件聚合",两类功能不要混淆。
多条件版(SUMIFS、COUNTIFS等)参数中,求和/计算范围在最前,然后是(条件范围, 条件)配对。
文字条件要加引号,数值不加;运算符(>、=)在引号内;引用单元格不加引号用 & 拼接。
通配符 * 和 ? 在文字条件中可用于模糊匹配。
遇到复杂条件公式,直接把表结构和需求描述给 AI,效率远超自己摸索。
上一章 ← 第3章:查找与引用函数 下一章 第5章:文本处理函数 →