Excel 里 if 函数设置多个条件主要有两大主流方案,第一种是搭配 AND OR 逻辑函数,把多个判断条件合并放进 IF 的第一参数,适合所有条件同时成立或者任意一个成立的场景,第二种是 IF 嵌套,也就是一层 IF 里面再套一层甚至多层 IF,适合按顺序逐级判断,满足第一个条件走第一套结果,不满足就继续判断下一个条件,实现多分支输出,两种方案适用逻辑不一样,不能混用,很多新手设置多个条件失败,就是没有分清是并列逻辑还是逐级判断逻辑,同时还要注意全部符号必须是英文半角,文本返回值要加英文双引号,嵌套层级越多,括号匹配越容易出错,低版本表格软件也可以正常使用这套写法,不需要额外开启特殊功能。原生 IF 函数本身只自带一套判断参数,也就是判断表达式,成立返回值,不成立返回值,本身没有办法一次性直接录入多套独立判断,所以才需要借助逻辑函数合并条件,或者嵌套 IF 扩展判断分支,AND 代表并且,也就是里面所有条件全部满足,整体结果才为真,OR 代表或者,只要里面任意一个条件满足,整体结果就为真,这两个函数是设置多个条件最核心的辅助函数,而嵌套 IF 是把下一层 IF 放置在上一层 IF 的第三参数位置,也就是上一层条件不成立的时候,自动触发下一轮判断,这种方式可以实现多档分级判断,比如成绩分优良中差,员工等级评定这类阶梯式业务判断。
方案一 AND 函数 全部条件同时满足
标准公式
=IF (AND (条件 1, 条件 2, 条件 3), 全部满足返回结果,不满足返回结果)
适用场景
多个条件必须同时达标才执行对应结果,只要有任意一项不达标,就走最后的返回值,比如同时满足年龄大于 30,部门是销售,业绩大于 10 万,才标记为重点客户
参数说明
AND 括号内部依次填写每一个判断条件,条件之间用英文逗号隔开,所有条件全部成立,AND 整体返回真,IF 才会输出第一套结果,只要其中任意一个条件不成立,AND 整体返回假,IF 就输出兜底结果
方案二 OR 函数 任意条件满足即可
标准公式
=IF (OR (条件 1, 条件 2, 条件 3), 满足任意一项返回结果,都不满足返回结果)
适用场景
只要多个条件里面任意一项达成,就触发对应的结果,比如客户投诉,逾期,欠费任意一项出现,就标记风险客户
参数说明
OR 括号内填写全部判断条件,只要其中一个条件成立,OR 整体返回真,IF 就输出对应结果,全部条件都不成立,才输出最后的兜底结果
方案三 IF 嵌套 逐级多分支判断
标准公式
=IF (条件 1, 结果 1,IF (条件 2, 结果 2,IF (条件 3, 结果 3, 兜底结果)))
适用场景
阶梯分级判断,按照顺序依次校验,第一个条件不成立,才会继续判断第二个条件,第二个不成立继续判断第三个,适合分档评级,区间数值判定,比如分数划分优秀良好及格不及格
参数说明
每一层 IF 都拥有独立的三个参数,下一层 IF 放在上一层 IF 的第三参数位置,每一层 IF 都对应一个英文右括号,公式末尾需要把全部右括号补齐
详细设置操作步骤
第一步 点击需要显示计算结果的单元格,在编辑栏输入等号,Excel 所有公式都必须以等号作为开头
第二步 根据业务逻辑选定方案,如果是同时满足或者任意满足,优先选择 AND 或者 OR,如果是分级阶梯判断,选择 IF 嵌套
第三步 输入 IF,接着输入英文左括号,若是 AND 或者 OR 方案,就在 IF 第一参数位置写入 AND 或者 OR,在逻辑函数括号内部逐个填写多个判断条件,条件之间使用英文逗号分隔
第四步 填写逗号,录入条件成立对应的返回内容,文字内容需要包裹英文双引号,数字或者单元格引用可以直接填写,继续输入英文逗号,录入全部条件不成立时的兜底返回值
第五步 如果是 IF 嵌套方案,在第一层 IF 的第三参数位置,继续输入 IF,重复填写下一组判断条件,返回值,持续嵌套直到全部条件设置完成
第六步 核对所有括号数量,确认逗号,括号,双引号全部是英文半角字符,按下回车键,单元格就会算出结果
第七步 鼠标放在单元格右下角,等到光标变成十字填充柄,下拉填充整列,批量完成全部行的多条件判断,然后抽查几行数据,核对判断结果是否符合业务预期
常见搭配进阶写法
AND 和 OR 可以组合使用,实现混合逻辑,比如同时满足 A 条件,并且 B 或者 C 其中一个成立,公式写法为 IF (AND (A 条件,OR (B 条件,C 条件)), 结果,兜底),这种写法适合更复杂的多条件业务,但是公式可读性会下降,条件较多的时候建议拆分辅助列,降低公式出错概率
注意事项清单
所有逗号括号双引号必须使用英文半角,中文符号会直接出现公式报错
嵌套 IF 层级过多会增加维护难度,新版 Excel 和 WPS 可以考虑替换成 IFS 函数,但是旧版本不支持 IFS,跨文件使用的时候优先保留 IF 嵌套写法
下拉填充公式的时候,如果条件里面引用的单元格不能自动偏移,需要添加绝对引用,也就是美元符号锁定单元格
判断运算符大于小于大于等于小于等于,直接使用符号,不要输入中文汉字
如果单元格里面本身存在空值错误值,多条件判断的时候会连带输出错误,必要时可以增加 ISERROR 类函数做容错处理
【常见问题】
问题 1 if 函数怎么设置多个条件的时候,AND 和 OR 能不能同时写在同一个公式里面
回答 1 if 函数怎么设置多个条件的时候,可以把 AND 和 OR 组合嵌套在同一个公式内部,实现混合逻辑判断,也就是一部分条件要求同时满足,另一部分条件满足任意一项即可,编写的时候要留意括号层级,避免逻辑顺序写反造成判断结果错误
问题 2 if 函数怎么设置多个条件,为什么下拉之后判断结果全部一样
回答 2 if 函数怎么设置多个条件出现下拉结果全部相同,一般是条件里面的单元格引用没有相对引用,已经被锁定成绝对引用,修改单元格引用方式,取消多余的锁定符号,下拉之后条件就会跟着每行数据自动变化
问题 3 if 函数怎么设置多个条件,嵌套层级太多公式容易报错怎么办
回答 3 if 函数怎么设置多个条件,嵌套层级过多容易因为括号不匹配报错,新版表格软件可以改用 IFS 函数简化多条件分级判断,也可以增加辅助列,把复杂多条件拆分成多个简单公式,降低单条公式的复杂度,减少出错概率
【免责申明】
本文基于 Excel 以及 WPS 表格通用版本讲解 if 函数设置多个条件的方法,不同软件版本函数兼容性存在差异,部分老旧版本不支持部分组合写法,公式运算结果会受到单元格数据类型,空值,错误值,隐藏单元格等因素影响,本文仅用于学习参考,正式业务使用前请自行测试校验,不承担因为公式误用产生的数据错误相关责任。


