Excel IF 函数与公式
IF 函数按条件二选一:条件成立返回一个值,不成立返回另一个。多分支用嵌套 IF 或 IFS,多条件搭配 AND / OR。
IF 函数语法与参数结构
IF 函数是电子表格逻辑判断的基石。条件成立时返回一个值,不成立时返回另一个值。
任何计算结果为 TRUE 或 FALSE 的逻辑条件或表达式(例如 A2 >= 90、B2 = "Pending" 或 C2 > AVERAGE(C$2:C$10))。
当 logical_test 条件成立(TRUE)时返回的结果。可以是双引号包裹的文本(如 "Pass")、数值、单元格引用或另一个公式。
当 logical_test 条件不成立(FALSE)时返回的结果。若省略且条件不符则返回 FALSE;在多阶梯等级中,此处通常接续下一个嵌套 IF。
经典面试阶梯示例:分数换算字母等级
阈值必须由高到低依次评估(先 90,再 80,再 70)。因为一旦前面的条件成立,后续分支就不会再执行。
如何在 Excel 中写 IF 函数
- 先写条件(logical_test) — 想清楚要判断什么:例如 A2>=90 的及格线、B2="Done" 的状态比对。条件的计算结果必须是 TRUE 或 FALSE。
- 写两个返回值 — value_if_true 是条件成立时的结果,value_if_false 是不成立时的结果;文本要加英文双引号。
- 多分支用嵌套 IF 或 IFS — 一个 IF 只能二选一;多个阈值把下一个 IF 写进 value_if_false 逐级嵌套,新版 Excel 也可直接用 IFS 函数。
IF + AND / OR:一个 IF 判断多个条件
IF 的条件位本身只能放一个逻辑测试;把 AND 或 OR 套在条件位,就能一次检查多个单元格、多个阈值:
AND:所有条件都为 TRUE 才算成立——例如两科成绩都 ≥60 才显示 Pass。
OR:任意一个条件为 TRUE 即成立——例如任一科 ≥90 就通过。
IF 判断文本包含与空白单元格
IF 没有直接的「包含」参数,经典写法是用 SEARCH 找位置,再用 ISNUMBER 转成 TRUE/FALSE 交给 IF:
SEARCH 在 A2 中搜索 "urgent"(不区分大小写,找到返回位置数字,找不到报错);ISNUMBER 把结果转成 TRUE/FALSE。需要区分大小写时把 SEARCH 换成 FIND。
判断不为空:<>"" 表示「不等于空」。反向判断空白单元格可用 ISBLANK(A2)。
嵌套 IF 与现代 IFS 的差异
嵌套 IF
兼容性最佳,适用于所有旧版工作簿与面试考题。从最高阈值自上而下阅读,先符合者优先胜出。
IFS 函数
现代 Excel 与 Google Sheets 多条件写法更简洁:=IFS(A2>=90,"A", A2>=80,"B", A2>=70,"C", TRUE,"D"),可避免括号层层嵌套。
常见错误与注意事项
- 阈值顺序 — 判断顺序极为关键:若先写 A2>=70 返回 C,则 95 分也会直接判定为 C,务必按从高阈值到低阈值排列。
- 文本引号 — 文本结果必须加英文半角双引号:"A",若写裸 A 会被 Excel 视为无效变量或列名而抛出 #NAME? 错误。
- 空白单元格 — 空白单元格判断:在 Excel 中空白单元格与数值 0 比较可能产生非预期结果,必要时搭配 ISBLANK 检查。
相关实战练习推荐
在真实业务情境的迷你电子表格中,尝试更多函数组合与逻辑挑战,加深肌肉记忆。
常见问题
IF 公式的语法是什么?
使用 =IF(logical_test, value_if_true, value_if_false)。例如 =IF(A2>=60, "Pass", "Fail"):A2 不低于 60 返回 Pass,否则返回 Fail。
Excel 里怎么写 IF 函数?
先写条件,再写两个结果:=IF(A2>=90, "A", "B")。超过两个结果时,把下一个 IF 嵌套写进 value_if_false;新版 Excel 与 Google Sheets 也可直接用 IFS 函数。
IF 怎么搭配 AND、OR 判断多个条件?
把 AND/OR 嵌进条件位:=IF(AND(A2>=60, B2>=60), "Pass", "Fail") 要求两个条件都成立;换成 OR 则任一成立即可。
IF 如何判断单元格包含某段文本?
用 ISNUMBER 包住 SEARCH:=IF(ISNUMBER(SEARCH("urgent", A2)), "Priority", "Normal")。SEARCH 不区分大小写,需要区分时改用 FIND。
IF 如何判断单元格不为空?
与空文本比较:=IF(A2<>"", "已填写", "未填写")。直接判断是否为空可用 =IF(ISBLANK(A2), "为空", "有值")。
IF、COUNTIF、SUMIF 有什么区别?
IF 按条件二选一返回值;COUNTIF 统计满足条件的单元格个数;SUMIF 汇总满足条件的数值。三者经常配合:COUNTIF/SUMIF 负责聚合,IF 负责逐行判断。
什么时候用嵌套 IF、什么时候用 IFS?
嵌套 IF 兼容性最好;现代 Excel / Sheets 若有多个分支,IFS 更清晰。
为什么嵌套 IF 返回了错误的等级?
顺序很重要。请把最高阈值放在最前面,让先成立的条件优先生效。