在 Excel 里面 if 函数属于基础逻辑判断函数,核心作用是按照预先设定的判断条件做真假判断,条件成立的时候返回指定结果,条件不成立的时候返回另外一个指定结果,成绩判定合格不合格,订单判断是否逾期,薪资档位自动分级这类场景都经常使用,这个函数是嵌套其他函数的基础,很多复杂公式都是以 if 作为主体搭建,新手最容易踩坑的地方就是括号数量不对,逗号分隔错误,还有多层嵌套层级混乱,理解三个参数的含义,掌握比较运算符和嵌套写法,就可以实现单条件判断,多档位分级判断,还能和 and or 这类逻辑函数组合,实现多条件综合判断,是 Excel 办公制表里面必学的核心函数。
函数基础语法原理
if 函数一共包含三个参数,第一个参数是 logical_test 也就是判断条件,第二个参数是 value_if_true 也就是条件成立的时候返回的值,第三个参数是 value_if_false 也就是条件不成立的时候返回的值,函数运行逻辑就是先计算第一个判断条件,如果判断结果为真,就输出第二个参数内容,如果判断结果为假,就输出第三个参数内容。
判断条件里面可以使用大于小于等于不等于大于等于小于等于这类比较运算符,也可以搭配 and 函数同时满足多个条件,或者 or 函数满足任意一个条件,返回的结果可以是数字文本,也可以继续写入另一个 if 函数,也就是大家常说的 if 嵌套,用来实现三级四级甚至更多档位的分级判断,需要记住所有文本结果都要用英文双引号包裹,公式内部全部标点必须是英文半角符号。
基础操作步骤
1 打开 Excel 表格,确定需要判断的数据单元格,比如 B2 单元格是考试分数,想要根据分数判断是否及格,及格线设置为 60 分。
2 点击要输出结果的空白单元格,输入等于号,然后输入 if 函数,括号内填写第一个判断条件 B2>=60,逗号之后填写条件成立返回的内容,也就是合格,逗号之后填写条件不成立返回的内容,也就是不合格,完整公式 = if (B2>=60,"合格","不合格"),按下回车键,就得到第一行的判断结果。
3 鼠标移动到单元格右下角,等光标变成黑色十字填充柄,按住向下拖动,整列所有分数就批量完成判断,如果后续需要固定判断区域,记得给单元格加上绝对引用符号,下拉填充的时候单元格不会自动偏移。
4 如果需要做多档位分级,比如 90 分以上优秀,60 到 89 分及格,60 分以下不及格,就使用 if 嵌套,在第三个参数位置继续写入新的 if 函数,公式 = if (B2>=90,"优秀",if (B2>=60,"及格","不及格")),多层嵌套的时候一定要核对每一层括号,保证左右括号数量匹配。
常用写法清单
| 判断需求 | 公式示例 | 说明 |
|---|---|---|
| 单条件及格判定 | =if (B2>=60,"合格","不合格") | 大于等于 60 返回合格,否则不合格 |
| 多档位成绩分级 | =if (B2>=90,"优秀",if (B2>=60,"及格","不及格")) | 嵌套 if 实现三级分类 |
| 同时满足两个条件 | =if (and (B2>=60,C2>=60),"全部合格","存在不合格") | 搭配 and 函数多条件同时成立 |
| 满足任意一个条件 | =if (or (B2>=90,C2>=90),"达标","未达标") | 搭配 or 函数满足其一即可 |
| 判断是否为空单元格 | =if (B2=""," 未填写 "," 已填写 ") | 判断单元格是否为空值 |
| 数值区间判断 | =if (B2>100,"超标",if (B2>=0,"正常","负数异常")) | 区间分层判断 |
进阶组合应用
第一种是和 countif sumif 搭配,先用其他函数计算统计结果,再交给 if 做判断,比如统计完重复次数之后,用 if 判断是否重复,公式 = if (countif (A:A,A2)>1,"重复","唯一"),这类组合公式在数据校验场景非常常用。
第二种是错误值处理,搭配 iserror 函数,当计算出现错误的时候,if 返回空白或者提示文字,避免表格里面出现乱码错误值,适合公式引用容易报错的报表。
第三种是跨工作表判断,判断条件可以引用其他工作表单元格,公式 = if (Sheet2!B2>=80,"达标","未达标"),工作表名称后面添加感叹号,实现跨表逻辑判断。
常见错误排查
第一个错误,公式提示括号不匹配,多层 if 嵌套的时候,每一层 if 都需要一对括号,少写或者多写括号都会报错,检查所有层级括号闭合。
第二个错误,文本没有加英文双引号,if 返回文字的时候,如果不加英文双引号,Excel 会识别成名称,出现名称错误提示。
第三个错误,判断顺序出错,嵌套 if 的时候,必须从大到小或者从小到大依次判断,如果顺序颠倒,后面的判断永远不会执行,比如先判断大于等于 60,再判断大于等于 90,那么 90 分以上也会被判定成及格。
第四个错误,逗号使用中文逗号,函数内部所有逗号都必须是英文半角逗号,中文逗号会直接造成公式识别失败。
【常见问题】
问题 1 excel 中 if 函数可以实现多档位分级判断吗
回答 1 excel 中 if 函数支持嵌套写法,可以实现多档位分级判断,在第三个参数位置继续写入新的 if 函数,excel 中 if 函数嵌套层级在新版 Excel 有更高上限,适合成绩评级等级划分这类场景。
问题 2 excel 中 if 函数搭配 and 函数是什么作用
回答 1 excel 中 if 函数搭配 and 函数,可以实现多个条件必须同时满足才返回成立结果,excel 中 if 函数本身只支持单个判断条件,搭配 and 之后就可以完成多条件同时成立的逻辑判断。
问题 3 excel 中 if 函数嵌套判断顺序为什么很重要
回答 1 excel 中 if 函数嵌套的时候,如果判断顺序颠倒,会出现后面档位永远无法命中的情况,excel 中 if 函数是从上到下依次判断,满足前面条件就直接返回结果,不再继续执行后面判断。
问题 4 excel 中 if 函数返回文字为什么报错
回答 1 excel 中 if 函数返回文本内容的时候,文本必须包裹英文双引号,如果没有加英文双引号,excel 中 if 函数就会识别错误,出现名称错误,改成英文双引号就可以修复。
【免责申明】
本文基于常规版本 Excel 讲解 if 函数的用法,不同版本 Excel 嵌套上限函数兼容表现基本一致,第三方改版软件宏环境可能存在细微差异,本文仅作为学习参考,使用 excel 中 if 函数制作判断公式之后,请人工抽样核对判断结果,复杂多层嵌套公式建议分步测试,避免逻辑判断错误。


