Excel的逻辑函数家族成员众多,如果把整个家族比作一支球队,那么判断类函数就是这支球队的“守门员”——它们决定着数据能否通过某个关口。IF、AND、OR、NOT、IFS、SWITCH、XOR,这些名字在日常办公中出现频率极高,但很多用户对它们的定位和配合方式并不清晰。
从功能角度看,逻辑函数可以分为三个层次:基础判断层(IF)、条件组合层(AND、OR、NOT、XOR)、多路选择层(IFS、SWITCH)。理解这个分层结构,是掌握多条件判断的第一步。
在实际工作中,单一条件的判断极为罕见。以员工绩效考核为例,一项考核结果往往需要同时满足多个指标才能确定。销售额、利润率、客户满意度、迟到次数——四个维度综合评定,最终输出一个考核等级。这就是多条件判断的典型应用场景。
多条件判断有四种基本模式,理解每种模式的逻辑内核,才能在面对具体问题时选对武器。
串联判断(AND模式)——所有条件必须同时满足。场景举例:员工同时满足“销售额≥60000”“利润率≥0.22”“客户满意度≥4.0”“迟到次数≤2”四个条件,才能被评为优秀。四个条件缺一不可,串联判断适用。
并联判断(OR模式)——任意一个条件满足即可。场景举例:员工只要“销售额超过80000”或者“客户满意度达到4.8”,即使另一项不达标,也能获得特殊奖励。并联判断的特点是“满足其一即通过”。
排除判断(NOT模式)——对条件结果取反。场景举例:考核中有一项否决项——“迟到次数超过5次直接判定不合格”,此时需要对“迟到次数≤5”这个条件取反,排除不符合的情况。
异或判断(XOR模式)——有且仅有一个条件满足时返回真。场景举例:在一些特殊的分类场景中,数据只能属于唯一类别,不允许同时满足两个及以上条件。XOR函数返回所有条件中恰好满足偶数个(从逻辑运算角度)或恰好满足一个的情况,在常规考核中较少使用,但在去重类场景中有独特价值。
理解这四种模式的区别之后,下一步就是将它们与IF函数结合使用,实现复杂的多条件判断逻辑。
现在进入实战环节。某公司需要对20名员工进行年度考核,根据销售额、利润率、客户满意度和迟到次数四项指标,综合评定考核等级。考核规则如下:
将这个规则翻译为Excel公式,需要使用IF函数嵌套AND函数:
=IF(AND(C2>=60000,D2>=0.22,E2>=4.0,F2<=2),"优秀",IF(AND(C2>=40000,D2>=0.18,E2>=3.5,F2<=5),"合格","待改进"))逐层拆解这个公式:外层IF判断是否“优秀”,条件为AND函数同时检验四个指标。内层IF判断是否“合格”,同样以AND函数组合四个门槛值。如果两个条件均不满足,则返回“待改进”。
根据这个公式,对20名员工逐一计算:

在实际操作中,如果在考核规则中增加“迟到超过5次直接一票否决”的逻辑,可以使用NOT函数配合IF实现:
=IF(NOT(F2<=5),"待改进",IF(AND(C2>=60000,D2>=0.22,E2>=4.0,F2<=2),"优秀",IF(AND(C2>=40000,D2>=0.18,E2>=3.5,F2<=5),"合格","待改进")))NOT(F2<=5)等价于F2>5,即当迟到次数超过5次时,直接返回“待改进”,不再继续判断其他条件。这种“一票否决”的逻辑在处理考勤问题时非常实用。
当判断条件超过两个分支时,除了IF函数嵌套,还有两个更优雅的替代方案:IFS和SWITCH。下面从多个维度对比这三个函数。
IF函数是所有选择器的基础。它的语法为=IF(条件, 真值返回, 假值返回),支持无限层级嵌套。IF函数的优势在于灵活性极高,几乎任何条件组合都能实现。但当分支数量超过三个时,公式会变得冗长,可读性显著下降。
IFS函数是IF嵌套的升级版,专为多分支场景设计。它的语法为=IFS(条件1, 值1, 条件2, 值2, ..., 默认值),按顺序逐一检验条件,返回第一个满足条件对应的值。例如将考核公式改写为IFS版本:
=IFS(AND(C2>=60000,D2>=0.22,E2>=4.0,F2<=2),"优秀",AND(C2>=40000,D2>=0.18,E2>=3.5,F2<=5),"合格",TRUE,"待改进")IFS的最后一个条件设为TRUE,确保前面条件都不满足时返回默认值。IFS函数比多层IF嵌套更简洁,也更容易维护。
SWITCH函数则是根据一个表达式的值进行匹配。它的语法为=SWITCH(表达式, 值1, 结果1, 值2, 结果2, ..., 默认值)。SWITCH适合条件本身具有明确枚举值的场景。例如,根据考核等级代码(A/B/C)返回对应描述:
=SWITCH(G2,"A","优秀","B","合格","C","待改进","未知等级")SWITCH的优势在于结构清晰、执行效率高。但它的局限也很明显——只能做精确匹配,无法处理大于、小于、区间等比较判断。
三者对比总结如下:IF适合复杂条件组合和逻辑判断;IFS适合多分支的等值/比较判断,结构清晰;SWITCH适合基于单一表达式精确匹配的固定分支场景。
经过以上学习,面对一个多条件判断问题时,应该如何选择合适的函数?这里给出四条实操建议。
第一条:先画判断树,再选函数。 在动手写公式之前,用自然语言把判断逻辑梳理清楚。有几个分支、每个分支是什么条件、条件之间是“且”还是“或”。判断树画清楚之后,函数选择自然就明确了。
第二条:单条件精确匹配首选SWITCH。 如果判断依据是一个字段的具体值,例如部门代码、岗位等级、产品类别等,SWITCH函数是最佳选择。它的可读性最强,修改维护也最方便。
第三条:多条件区间判断用IFS。 当条件涉及数值区间(如销售额分段、利润率区间)或需要同时组合多个指标时,IFS函数比多层IF嵌套更优雅。需要注意条件的排列顺序,确保优先级逻辑正确。
第四条:复杂业务规则优先IF配合AND/OR/NOT。 如果业务规则中存在“一票否决项”、条件权重不同、嵌套的特殊情况等复杂逻辑,IF函数仍然是不可替代的工具。可以将NOT函数用于排除性条件,将AND/OR函数用于组合条件的精细化判断。
在实际工作中,这几个函数很少单独使用,更多的是组合使用。例如:=IF(NOT(条件A), 结果X, IFS(条件B, 结果Y, 条件C, 结果Z, TRUE, 结果W))。这种组合方式既保留了IF的灵活性,又利用了IFS的简洁性,是处理复杂业务规则的推荐做法。
📚 配套学习资料免费领
点击公众号菜单「函数教程」,获取教程。
往期推荐
| AND | BYCOL | BYROW | FALSE |
| IFERROR | IFNA | IFS | LAMBDA |
| NOT | OR | REDUCE | SCAN |
| TRUE | XOR | MAP | MAKEARRAY |
| IF | LET | SWITCH |