Excel IF 函数多条件嵌套怎么写
按分数评级、按金额分档、按状态打标签——这些需求背后都是 IF 函数。IF 单条件好写,一旦条件变多,嵌套括号多层就容易乱。本文从最基本的 IF 写法讲起,讲清多层嵌套和 AND/OR 搭配的写法,再介绍超级表里用公式面板点选条件、不用套括号的做法。
IF 函数基本用法
IF 函数的语法只有三个参数:
=IF(条件, 条件为真时返回的值, 条件为假时返回的值)
举个最常见的例子:判断某列的分数是否及格(60 分及以上算及格):
=IF(A2>=60, "及格", "不及格")
A2 是分数所在单元格。条件 A2>=60 成立时返回"及格",不成立时返回"不及格"。往下拖公式,每一行都会按自己的分数判断。
这是 IF 最基本的形态:一个条件,两种结果。但实际工作里往往需要三种甚至更多分类,比如把分数分成优秀、及格、不及格三档,这就需要 IF 嵌套。
IF 多条件:嵌套写法
把一个 IF 的「假值」位置再套一个 IF,就能实现多档判断。还是按分数分三级——90 分及以上"优秀",60 到 89 分"及格",60 分以下"不及格":
=IF(A2>=90, "优秀", IF(A2>=60, "及格", "不及格"))
逻辑是:先判断分数是否 ≥90,是的话直接返回"优秀";否则再判断是否 ≥60,是的话返回"及格";两个条件都不满足则返回"不及格"。
条件越多,嵌套层数越多。比如再加一档"良好"(75 到 89 分):
=IF(A2>=90, "优秀", IF(A2>=75, "良好", IF(A2>=60, "及格", "不及格")))
这时括号已经开始叠了,四档分类对应三层 IF 嵌套,末尾需要连续三个右括号 ))) 来关闭三层括号。
IF + AND / OR:同时满足 / 任一满足
有时候判断条件不只一个维度——比如「分数 ≥80 且出勤率 ≥90% 才算优秀」,或者「分数不及格 或出勤率低于 60% 就标记为异常」。这时就要把 AND / OR 嵌进 IF 的条件位置。
AND(同时满足所有条件):
=IF(AND(A2>=80, B2>=90), "优秀", "普通")
AND 里可以放多个条件,全部成立才返回真。
OR(任一满足即可):
=IF(OR(A2<60, B2<60), "异常", "正常")
OR 里任何一个条件成立,整体就为真。
AND 和 OR 也可以和嵌套 IF 组合使用,但这时公式会变得相当长,括号层数和参数顺序都容易写错。一旦条件维度多于两个,建议换一种更可读的工具来处理。
更简单:超级表公式面板点选条件分类,不用套括号
超级表(TableDI)是一款桌面端高能表格助手,它内置的公式面板把「条件判断」做成了可视化的点选流程——你不需要记 IF 的参数顺序,也不需要手动配对括号。步骤如下:
- 把数据表导入超级表(直接拖入 Excel / CSV 文件即可)。
- 在目标列上打开公式面板,选择「条件分类」类型的运算。
- 在面板里点选字段(如「分数」列)、设置运算符(≥、<、= 等)和阈值,再填入对应的分类标签。
- 需要多档判断就点「添加条件」,依次加好每一档,顺序可随时拖动调整。
- 确认后,超级表自动把公式写好并填满整列——每行按自己的值匹配对应标签。
整个过程不需要写一个括号。想用更多运算组合,可以参考用公式面板代替 VLOOKUP 里的通用使用思路。做完分类后如果还需要按标签汇总求和,可以接着看SUMIF 按条件求和的做法。
Excel IF 嵌套 vs 超级表公式面板
| 对比项 | Excel IF 嵌套 | 超级表公式面板 |
|---|---|---|
| 操作方式 | 手写公式、记参数顺序 | 点选字段和运算符,可视化搭建 |
| 多档条件 | 嵌套层数多、括号易错位 | 点「添加条件」依次填,无括号 |
| AND / OR 混用 | 公式变长,可读性差 | 条件间关系点选即可 |
| 条件顺序调整 | 手动改公式,易出错 | 拖动调整顺序 |
| 报错排查 | 括号对数、参数位置逐一检查 | 面板即时预览,不用猜 |
常见问题
IF 函数能嵌套几层?
Excel 2007 及以上版本最多支持 64 层嵌套,理论上够用。但实际超过五六层时,公式可读性极差、维护成本很高。建议超过三四档分类就改用 IFS 函数,或者用超级表公式面板点选。
AND 和 OR 有什么区别?
AND 是「所有条件都要满足」,有一个不满足就返回假;OR 是「只要有一个条件满足」就返回真,全部不满足才返回假。判断「既要分数高又要出勤好」用 AND;判断「分数低或者出勤差其中一项就标异常」用 OR。
IFS 函数是什么?和 IF 嵌套有什么区别?
IFS 是 Excel 2016 及 Microsoft 365 才有的函数,语法是 =IFS(条件1, 值1, 条件2, 值2, ...),直接平铺条件而不用嵌套,没有层层括号。比如上文四档分类可以写成:=IFS(A2>=90,"优秀",A2>=75,"良好",A2>=60,"及格",TRUE,"不及格"),最后一个 TRUE 作为兜底条件。老版本 Excel(2013 及以下)没有 IFS,只能用 IF 嵌套。