使用 IFS 简化分支判断
使用易读的 IFS 函数替代层层嵌套的 IF 语句
使用 IFS 简化分支判断 是 CoddyKit 上的免费 Excel Formulas Academy 课时。 这是第 4 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Excel Formulas Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Excel Formulas Academy 课程共包含 4 节课。
嵌套 IF 的问题
单个 IF 可以处理是或否的选择。但如果有很多结果,比如将分数转换为 A 到 F 的字母等级呢?您必须将一个 IF 嵌套在另一个 IF 中,一层又一层。
这种嵌套难以阅读、容易出错,也很难数清结尾的括号。IFS 函数正是为了解决这个问题而设计的。它让您可以用整洁、平铺的一行列出条件和结果对。
嵌套 IF 的形式
这是使用嵌套 IF 函数编写的等级公式。每个 IF 都将另一个 IF 作为其假分支。
它可以运行,但请注意末尾的括号如何层层堆积,逻辑也难以快速浏览。想象一下,如果不是四个分支,而是要维护八个分支。
=IF(A2>=90, "A", IF(A2>=80, "B", IF(A2>=70, "C", "F")))IFS 的结构
IFS 函数接受成对的参数:一个条件,然后是该条件为真时要返回的值。它按从上到下的顺序检查。
- 测试条件 1、值 1 如果测试条件 1 为真,则返回值 1
- 测试条件 2、值 2 否则,如果测试条件 2 为真,则返回值 2
它会返回第一个为真的条件所对应的值,然后停止。您最多可以串联 127 对。
=IFS(test1, value1, test2, value2, ...)重写等级公式
下面是使用 IFS 编写的相同评分逻辑。每一行都是整洁的条件—结果对,不会出现括号堆积。
IFS 会先检查 90,然后检查 80,再检查 70。第一个为真的条件获胜。与嵌套版本相比,它完成相同的工作,但清晰得多。
=IFS(A2>=90, "A", A2>=80, "B", A2>=70, "C", A2>=60, "D")顺序很重要
由于 IFS 返回第一个为真的条件所对应的结果,因此测试条件的顺序至关重要。对于范围,请从限制最严格的条件排到最宽松的条件。
如果调换等级顺序,先测试 A2>=60,分数为 95 时就会错误地返回 D,因为 95 也大于 60,而这组条件排在前面。请始终仔细地按从高到低或从低到高的统一顺序排列各个分数段。
=IFS(A2>=90, "A", A2>=80, "B")添加兜底项
如果没有任何条件为真,IFS 会返回一个 #N/A 错误。为避免这种情况,请添加最后一组成对的兜底条件和值,其中条件只需使用 TRUE。
由于 TRUE 始终为真,它的作用类似于 IF 的最后一个否则分支。在下面的公式中,任何低于 60 的分数都会落到最后一组,并返回 F。
=IFS(A2>=90, "A", A2>=80, "B", A2>=70, "C", TRUE, "F")示例:配送等级
假设 A2 中的订单重量决定配送标签。低于 1 kg 为 Small,低于 5 kg 为 Medium,低于 20 kg 为 Large,更重的则为 Freight。
下面的 IFS 公式按顺序列出每个等级,并使用 TRUE 作为最重情况的兜底条件。系统会依次将每个重量与这些区间比较,直到找到匹配项。
=IFS(A2<1, "Small", A2<5, "Medium", A2<20, "Large", TRUE, "Freight")加入 AND 和 OR
IFS 中的每个条件都可以是任意逻辑测试,包括 AND 或 OR。这样您就能构建丰富的多因素分支。
下面的示例会分配客户等级:消费超过 1000并且是会员时为 Gold,消费超过 500或者是会员时为 Silver,否则为 Standard。
=IFS(AND(A2>1000, B2="Yes"), "Gold", OR(A2>500, B2="Yes"), "Silver", TRUE, "Standard")注意奇数个参数
IFS 要求参数成对出现:每个条件后面都必须跟着对应的值。常见错误是漏写结果或多加了一个逗号,导致参数无法配对。
- 错误:
=IFS(A2>=90, "A", A2>=80)最后一个条件没有对应的值 - 正确:
=IFS(A2>=90, "A", A2>=80, "B")
如果出现错误,请数一数参数;参数总数始终应为偶数。
=IFS(A2>=90, "A", A2>=80, "B")IFS 与 SWITCH
当每个分支都是一种比较时,例如比较范围或进行不同的测试,IFS 非常适合。如果您要将一个值与固定列表中的多个精确选项进行匹配,SWITCH 函数通常更简洁。
经验法则:范围和不同条件使用 IFS;当要将同一个单元格与多个精确值进行比较时,使用 SWITCH。您将在本课程稍后学习 SWITCH。
IFS 的重要性
IFS 函数用一个扁平、易读的条件—结果列表,替代层层嵌套的 IF 语句。只要一个值可能属于多个类别之一,它就是首选工具。
请牢记以下习惯:
- 仔细排列条件,因为第一个为真的条件会优先返回结果
- 添加
TRUE兜底条件,避免出现#N/A - 确保参数成对出现,且总数为偶数
现在请进行快速检查。
快速检查
检验您对 IFS 函数行为的理解。
回顾:使用 IFS 实现更清晰的分支逻辑
您已经学会了如何使用 IFS 通过扁平的条件—结果列表处理多种结果,从而替代难以阅读的嵌套 IF 公式。
- 语法:
=IFS(test1, value1, test2, value2, ...) - 它会返回第一个为真的条件对应的结果,因此顺序很重要
- 以
TRUE, "default"结尾,可以处理其他所有情况 - 条件中可以包含
AND和OR
现在,您已经掌握了将条件与 AND、OR、NOT 和 IFS 结合使用的方法。做得很好!
=IFS(A2>=90, "A", A2>=80, "B", A2>=70, "C", TRUE, "F")用 AI 导师学习 Excel — 免费
在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。
- 课程
- 30
- 课程
- 120
常见问题解答
「使用 IFS 简化分支判断」课时是免费的吗?
是的 — 「使用 IFS 简化分支判断」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Excel Formulas Academy 课程的其余内容,请升级到 CoddyKit PRO。 Excel Formulas Academy 课程共包含 4 节课。
「使用 IFS 简化分支判断」这节课中我会学到什么?
使用易读的 IFS 函数替代层层嵌套的 IF 语句 你通过在浏览器中直接运行的动手代码来练习 Excel Formulas Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Excel Formulas Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Excel Formulas Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 4 节课,共 4 节。
「使用 IFS 简化分支判断」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Excel Formulas Academy 课中编写并运行代码吗?
能。每节 Excel Formulas Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- 使用 AND 要求全部条件满足
- 使用 OR 接受任一匹配
- 使用 NOT 反转逻辑
- 使用 IFS 简化分支判断