Excel逻辑函数:IF
在Excel中,数据往往不是一成不变的,公式也难免遇到错误值。如何根据条件做出判断?如何让公式在出错时显示友好的提示而非刺眼的 #N/A 或 #DIV/0!?这就需要用到IF家族的三位成员:IF、IFERROR、IFNA。
-
IF:逻辑判断的核心,根据条件返回不同的结果。
-
IFERROR:错误“捕手”,捕获所有类型的错误并替换为指定内容。
-
IFNA:专抓
#N/A错误的“狙击手”,只处理查找不到的情况。
掌握它们,你的Excel公式将变得更加智能、健壮。
一、IF函数:逻辑判断的基石
功能:判断一个条件是否成立,如果成立返回一个值,否则返回另一个值。
1. 语法结构
=IF(逻辑测试, 值如果为真, [值如果为假])
参数详解:
-
逻辑测试:任何可以返回TRUE或FALSE的表达式(例如
A1>60、B2="及格"、AND(C1>0,C1<100))。 -
值如果为真:当逻辑测试结果为TRUE时返回的内容(可以是数字、文本、公式或单元格引用)。
-
值如果为假:可选参数,当逻辑测试结果为FALSE时返回的内容。如果省略,则返回FALSE。
2. 基础示例
场景1:根据成绩判断是否及格。
|
|
|
|---|---|
|
|
=IF(A2>=60, "及格", "不及格")
|
|
|
=IF(A3>=60, "及格", "不及格")
|
场景2:根据销售额计算奖金(销售额>=10000奖励500,否则0)。
=IF(B2>=10000, 500, 0)
3. 嵌套IF:多条件判断
当有多个分支时,可以在“值如果为假”中再嵌套一个IF函数,实现多级判断。
场景:根据分数评定等级:90以上为A,80-89为B,60-79为C,60以下为D。
=IF(A2>=90, “A”, IF(A2>=80, “B”, IF(A2>=60, “C”, “D”)))
注意事项:嵌套层级过多会使公式难以阅读和维护。Excel支持最多64层嵌套,但建议超过3层时考虑使用 IFS 函数(Excel 2019+)或 VLOOKUP 近似匹配。
4. 与AND/OR组合:多条件同时判断
-
AND:所有条件都成立才返回TRUE
-
OR:任一条件成立就返回TRUE
场景1:员工同时满足“销售额>10000”且“出勤率>90%”才能获得优秀员工.
=IF(AND(B2>10000, C2>0.9), “优秀员工”, “继续努力”)
场景2:只要满足“销售额>10000”或“出勤率>95%”之一就给予奖励。
=IF(OR(B2>10000, C2>0.95), “有奖励”, “无奖励”)
5. 常见错误
|
|
|
|
|---|---|---|
|
|
|
IF(A1>0, "正数", "非正数") |
|
|
|
|
|
|
|
|
夜雨聆风