乐于分享
好东西不私藏

Excel逻辑函数:IF

Excel逻辑函数:IF

在Excel中,数据往往不是一成不变的,公式也难免遇到错误值。如何根据条件做出判断?如何让公式在出错时显示友好的提示而非刺眼的 #N/A 或 #DIV/0!?这就需要用到IF家族的三位成员:IFIFERRORIFNA

  • IF:逻辑判断的核心,根据条件返回不同的结果。

  • IFERROR:错误“捕手”,捕获所有类型的错误并替换为指定内容。

  • IFNA:专抓 #N/A 错误的“狙击手”,只处理查找不到的情况。

掌握它们,你的Excel公式将变得更加智能、健壮。


一、IF函数:逻辑判断的基石

功能:判断一个条件是否成立,如果成立返回一个值,否则返回另一个值。

1. 语法结构

=IF(逻辑测试, 值如果为真, [值如果为假])

参数详解:

  • 逻辑测试:任何可以返回TRUE或FALSE的表达式(例如 A1>60B2="及格"AND(C1>0,C1<100))。

  • 值如果为真:当逻辑测试结果为TRUE时返回的内容(可以是数字、文本、公式或单元格引用)。

  • 值如果为假:可选参数,当逻辑测试结果为FALSE时返回的内容。如果省略,则返回FALSE。

2. 基础示例

场景1:根据成绩判断是否及格。

A列(成绩)
B列(判断)
85
=IF(A2>=60, "及格", "不及格")

 → 及格
45
=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. 常见错误

错误现象
常见原因
解决方法
返回FALSE
省略了“值如果为假”参数
补上第三个参数,如 IF(A1>0, "正数", "非正数")
公式错误
嵌套时括号不匹配
仔细检查括号,Excel会高亮配对括号
逻辑错误
条件顺序不当(如先判断>=60再判断>=90)
确保条件的范围由窄到宽或由宽到窄正确排列