Excel多条件判断:IF嵌套AND与OR函数实战详解
2026/9/1 13:41:43 网站建设 项目流程

在日常办公和职场数据处理中,判断“满不满足条件”是最常见的需求。比如:业绩是否达标、考勤是否异常、库存是否需要补货、客户是否满足回款标准。刚开始接触 Excel 的同学,通常只会用单个 IF 函数做简单判断;但一旦条件变成“同时满足两个条件”或“满足其中一个条件”,公式就不知道该怎么写了。

这篇文章专门围绕 IF 函数、AND 函数、OR 函数展开,讲清楚多条件判断的两种核心逻辑:

  • 同时满足两个条件:用 IF 嵌套 AND 函数。
  • 满足其中一个条件:用 IF 嵌套 OR 函数。

我会从最基础的函数语法讲起,再结合职场中的实际案例,一步一步拆解公式写法,最后整理常见报错和最佳实践。即使你之前完全没有用过 IF 函数,跟着这篇文章也能把多条件判断写明白。

1. 为什么需要 IF、AND、OR 多条件判断

1.1 职场中的多条件判断场景

先看几个真实工作场景:

  • 场景一:销售部规定,只有当月销售额大于等于 10 万,且回款率大于等于 80%,才能拿满额提成。这里有两个条件,并且是“同时满足”,属于 AND 逻辑。
  • 场景二:行政部规定,员工当月累计迟到 3 次,或累计请假超过 2 天,就需要在月度例会上说明原因。这里满足任意一个条件就触发,属于 OR 逻辑。
  • 场景三:人事部做绩效评级时,除了考核得分,还要参考考勤和项目完成情况,不同条件组合得到不同等级。

如果只用单个 IF 函数,只能处理“一个条件是或否”的情况,例如“销售额是否大于 10 万”。一旦条件增加到两个以上,单个 IF 就会显得力不从心。

1.2 三个函数的定位与关系

  • IF 函数:负责“判断并返回不同结果”,是整体公式的外层框架。
  • AND 函数:负责判断“多个条件是否全部成立”,返回 TRUE 或 FALSE。
  • OR 函数:负责判断“多个条件中是否有任意一个成立”,返回 TRUE 或 FALSE。

一个比较容易理解的比喻是:IF 函数就像公司门口的保安,AND 和 OR 则是保安手里的检查清单。

  • AND 清单:必须所有项目都打勾,才能放行。
  • OR 清单:只要有一个项目打勾,就能放行。

把这三个函数组合起来,就能应对绝大多数职场数据处理需求。

2. 环境准备与 Excel 版本说明

2.1 软件环境

本文示例适用于以下软件环境:

  • Microsoft Excel 2016、2019、2021、365
  • WPS 表格(个人版或专业版)
  • Google Sheets

IF、AND、OR 是 Excel 中最基础的逻辑函数,几乎所有支持公式的表格软件都内置了这几个函数,不需要额外安装插件。

2.2 函数可用性说明

以下三个函数在旧版本 Excel 中同样可用:

函数作用最低版本要求
IF条件判断Excel 2003 及更早版本已经支持
AND多条件同时成立Excel 2003 及更早版本已经支持
OR多条件任意成立Excel 2003 及更早版本已经支持

需要说明的是,Excel 365 和 Excel 2019 中新增了 IFS、IFERROR 等函数,它们能简化某些场景,但本文以通用性最强的 IF + AND + OR 组合为主,确保你在任何版本中都能使用。

2.3 中英文函数名与参数分隔符

在中文版 Excel 中,函数名一般显示为 IF、AND、OR;但在某些汉化版本或 WPS 中,也支持输入“如果”“并且”“或者”这类中文函数名。为了兼容性和可读性,建议统一使用英文函数名。

另一个容易踩坑的点是参数分隔符:

  • 中文系统 Excel 默认使用逗号,分隔参数。
  • 部分欧洲语言环境的 Excel 使用分号;分隔参数。

如果你在输入公式时报错,可以检查一下分隔符是否需要换成英文输入法下的分号。

3. IF 函数基础:先掌握单条件判断

3.1 IF 函数语法

IF 函数的语法非常简单:

IF(判断条件, 条件成立时返回的值, 条件不成立时返回的值)

参数解释:

参数含义是否必填
判断条件一个返回 TRUE 或 FALSE 的逻辑表达式必填
成立时返回的值条件为 TRUE 时显示的结果必填
不成立时返回的值条件为 FALSE 时显示的结果可省略,省略时返回 FALSE

3.2 单条件判断示例

假设表格中有一列销售额数据:

员工销售额
张三120000
李四80000

现在想要判断“销售额是否达标,达标线为 10 万”。

=IF(B2>=100000, "达标", "未达标")

在 C2 单元格输入上面的公式,结果如下:

员工销售额判断结果
张三120000达标
李四80000未达标

这里有一个细节:条件B2>=100000是一个逻辑表达式,Excel 会先计算它是否成立,然后再交给 IF 函数决定返回哪个结果。

3.3 使用 IF 函数的注意事项

第一,IF 函数返回的可以是文本、数字、公式计算结果,也可以直接返回另一个单元格引用。例如:

=IF(A2>=60, "及格", "不及格")

第二,IF 函数可以嵌套使用,最多支持 64 层嵌套(旧版本是 7 层)。虽然嵌套功能强大,但超过 3 层后公式阅读难度会明显增加,后面我会讲如何优化。

第三,判断条件中的文本需要用英文双引号括起来,数字不需要引号。

4. AND 函数与 OR 函数:多条件判断的基础单元

4.1 AND 函数语法

AND 函数的作用是判断多个条件是否同时成立。语法为:

AND(条件1, 条件2, ...)

只有所有条件都为 TRUE 时,AND 函数才返回 TRUE;只要有一个条件为 FALSE,AND 函数就返回 FALSE。

简单示例:

=AND(10>5, 3>1)

返回结果为 TRUE,因为两个条件都成立。

再看另一个示例:

=AND(10>5, 3<1)

返回结果为 FALSE,因为第二个条件不成立。

4.2 OR 函数语法

OR 函数的作用是判断多个条件中是否有任意一个成立。语法为:

OR(条件1, 条件2, ...)

只要有一个条件为 TRUE,OR 函数就返回 TRUE;只有所有条件都为 FALSE 时,OR 函数才返回 FALSE。

简单示例:

=OR(10>5, 3<1)

返回结果为 TRUE,因为第一个条件成立。

再看一个所有条件都不成立的示例:

=OR(10<5, 3<1)

返回结果为 FALSE。

4.3 为什么 AND 和 OR 常常配合 IF 一起使用

AND 和 OR 单独返回值时,只会输出 TRUE 或 FALSE。但在实际工作中,我们希望看到的是“达标”“预警”“合格”等业务提示,而不是干巴巴的 TRUE 和 FALSE。

于是标准写法变成:

IF(AND(条件1, 条件2), 结果1, 结果2)

或:

IF(OR(条件1, 条件2), 结果1, 结果2)

这样既完成了多条件判断,又给出了业务人员能直接读懂的结果。

5. IF 嵌套 AND 函数:同时满足两个条件

5.1 公式结构拆解

先看整体结构:

IF(AND(条件1, 条件2), 符合条件时的结果, 不符合条件时的结果)

最容易理解的方式是“由内向外”看公式:

  1. 先看 AND 部分:AND(条件1, 条件2)判断两个条件是否同时成立。
  2. AND 返回 TRUE 或 FALSE。
  3. IF 再根据 TRUE 或 FALSE,返回对应的结果。

如果条件 A 和条件 B 同时成立,就返回结果一;否则返回结果二。

5.2 实例:销售额与回款率双达标

现在举一个销售场景。业务规则如下:

  • 销售额大于等于 100000;
  • 回款率大于等于 80%;
  • 两个条件同时满足,标记为“双达标”,否则标记为“需跟进”。

数据表如下:

员工销售额回款率判定结果
张三1200000.85?
李四900000.90?
王五1500000.70?

在 D2 单元格输入公式:

=IF(AND(B2>=100000, C2>=0.8), "双达标", "需跟进")

计算逻辑如下:

  • 张三:销售额 120000 >= 100000,回款率 0.85 >= 0.8,AND 返回 TRUE,结果为“双达标”。
  • 李四:销售额 90000 < 100000,AND 返回 FALSE,结果为“需跟进”。
  • 王五:销售额 150000 >= 100000,但回款率 0.70 < 0.8,AND 返回 FALSE,结果为“需跟进”。

最终结果:

员工销售额回款率判定结果
张三1200000.85双达标
李四900000.90需跟进
王五1500000.70需跟进

这个案例体现了 AND 的“一票否决”特性:即使销售额很高,只要回款率不达标,整体结果仍然是不达标。

5.3 扩展到三个及以上条件

AND 函数支持多个条件同时判断。例如要求同时满足销售额 >= 100000、回款率 >= 0.8、客户满意度 >= 0.9,写法如下:

=IF(AND(B2>=100000, C2>=0.8, D2>=0.9), "优秀", "待改进")

参数依次用逗号隔开即可,逻辑仍然是“所有条件全部成立才返回 TRUE”。

6. IF 嵌套 OR 函数:满足其中一个条件

6.1 公式结构拆解

整体结构如下:

IF(OR(条件1, 条件2), 符合条件时的结果, 不符合条件时的结果)

OR 部分只要有一个条件为 TRUE,OR 就返回 TRUE,IF 就返回第一个结果;只有所有条件都不成立时,才返回第二个结果。

以“预警”类场景为例:

  • 当月迟到次数大于 3;
  • 当月请假天数大于 2;
  • 满足任一条件,标记为“需说明原因”;
  • 两个条件都不满足,标记为“正常”。

数据表如下:

员工迟到次数请假天数判断结果
张三51?
李四23?
王五11?

在 D2 单元格输入公式:

=IF(OR(B2>3, C2>2), "需说明原因", "正常")

计算结果:

  • 张三:迟到次数 5 > 3,OR 返回 TRUE,结果为“需说明原因”。
  • 李四:迟到次数 2 不大于 3,但请假天数 3 > 2,OR 返回 TRUE,结果为“需说明原因”。
  • 王五:两个条件都不满足,OR 返回 FALSE,结果为“正常”。

最终结果:

员工迟到次数请假天数判断结果
张三51需说明原因
李四23需说明原因
王五11正常

这个案例体现了 OR 的“宽进”特性:只要有一个条件成立,结果就被触发。

6.2 三个及以上条件的 OR 写法

OR 函数同样支持多个条件,例如满足以下任一条件就标记为“重点客户”:

  • 累计消费金额 >= 50000;
  • 最近 30 天有下单;
  • 会员等级为“金牌”。
=IF(OR(B2>=50000, C2="是", D2="金牌"), "重点客户", "普通客户")

三个条件用逗号分隔,任意一个为 TRUE,OR 就返回 TRUE。

7. 综合实战:IF 嵌套 AND、OR 的职场应用

只看单个案例可能还不够,下面安排几个更贴近实际工作的完整案例,把 IF、AND、OR 组合起来用。

7.1 场景一:销售提成比例计算

业务规则:

  • 销售额 >= 100000 且回款率 >= 80%,提成比例为 8%;
  • 销售额 >= 100000 但回款率 < 80%,提成比例为 5%;
  • 销售额 < 100000,提成比例为 3%。

这个规则里,条件有优先级关系,可以先用 IF 一层层判断。

数据表:

员工销售额回款率提成比例
张三1200000.85?
李四1200000.70?
王五800000.90?

先判断销售额是否达标,再判断回款率,公式如下:

=IF(AND(B2>=100000, C2>=0.8), 0.08, IF(AND(B2>=100000, C2<0.8), 0.05, 0.03))

这里用到了 IF 的嵌套结构:外层 IF 判断“高销售额 + 高回款率”的情况,如果不是,再判断“高销售额 + 低回款率”的情况,最后的 0.03 是前面所有条件都不满足时的兜底结果。

计算结果:

  • 张三:销售额 120000,回款率 0.85,满足第一个条件,提成比例 8%。
  • 李四:销售额 120000,回款率 0.70,不满足第一个条件,但满足第二个条件,提成比例 5%。
  • 王五:销售额 80000,不满足销售额条件,进入兜底,提成比例 3%。

实际工作中,提成比例计算后通常还要乘以销售额,可以写成:

=B2 * IF(AND(B2>=100000, C2>=0.8), 0.08, IF(AND(B2>=100000, C2<0.8), 0.05, 0.03))

7.2 场景二:绩效考核评级

业务规则:

  • 考核得分 >= 90,评级为“A”;
  • 考核得分 >= 80 且 < 90,评级为“B”;
  • 考核得分 >= 60 且 < 80,评级为“C”;
  • 考核得分 < 60,评级为“D”。

这个场景里,“得分 >= 80 且 < 90”就是一个典型的 AND 逻辑。

在 Excel 中,可以按从高到低的顺序写:

=IF(B2>=90, "A", IF(AND(B2>=80, B2<90), "B", IF(AND(B2>=60, B2<80), "C", "D")))

也可以简化写法——因为前面的 IF 已经筛选掉了 >=90 的情况,所以第二个条件直接写B2>=80即可:

=IF(B2>=90, "A", IF(B2>=80, "B", IF(B2>=60, "C", "D")))

两种写法结果一样,第一种更容易让新人理解条件边界,第二种更简洁。实际工作中,如果评分规则经常调整,建议用带 AND 的写法,逻辑更明确。

7.3 场景三:库存预警提示

业务规则:

  • 库存余量 < 50,或保质期剩余天数 < 30,标记为“需补货或处理”;
  • 否则标记为“正常”。

这个场景适合使用 IF 嵌套 OR。

数据表:

商品库存余量保质期剩余天数预警结果
商品A2060?
商品B10020?
商品C20090?

在 D2 单元格输入:

=IF(OR(B2<50, C2<30), "需补货或处理", "正常")

结果:

  • 商品A:库存余量 20 < 50,满足第一个条件,预警。
  • 商品B:库存余量 100 不满足,但保质期剩余 20 < 30,满足第二个条件,预警。
  • 商品C:两个条件都不满足,正常。

7.4 场景四:IF + AND + OR 三者联合嵌套

最后一个案例,把三个函数全部用上。

业务规则:

  • 如果(销售额 >= 100000 且回款率 >= 80%),或者该客户为“VIP”,则标记为“优质客户”;
  • 否则标记为“普通客户”。

公式如下:

=IF(OR(AND(B2>=100000, C2>=0.8), D2="VIP"), "优质客户", "普通客户")

执行顺序是:

  1. 先执行 AND(B2>=100000, C2>=0.8);
  2. 再执行 OR(AND的结果, D2="VIP");
  3. 最后 IF 根据 OR 的结果输出。

这就是典型的“同时满足”与“满足其一”混合使用。理解这个执行顺序后,无论规则多复杂,都能拆成“条件 + 条件”的组合。

8. 常见错误与排查思路

多条件判断写多了,难免会遇到报错。下面整理几个高频问题。

问题现象常见原因解决思路
公式提示“您为此函数输入的参数过多”括号位置错误,AND 或 OR 的括号没有正确闭合检查括号配对,从最内层开始数
公式返回 #NAME?函数名拼写错误,或文本没有加英文双引号检查单词拼写,检查文本引号
公式返回 #VALUE!比较的单元格内容不是数字确认单元格为数值格式,删除多余文本
条件判断结果与预期相反逻辑方向写反,例如大于写成了小于重新阅读业务规则,确认比较符号
结果全部返回同一个值条件中使用了错误的单元格区域,或多条件之间没有正确组合用公式求值工具逐步检查
公式下拉后引用错位相对引用和绝对引用使用不当根据需求添加美元符号 $ 锁定行或列

8.1 括号配对错误

嵌套函数最容易出现括号问题。比如:

=IF(AND(B2>=100000, C2>=0.8, "双达标", "需跟进")

这段公式缺少 AND 的右括号,正确的写法是:

=IF(AND(B2>=100000, C2>=0.8), "双达标", "需跟进")

排查括号时,可以从最内层开始按括号配对标识检查。大多数 Excel 版本在编辑公式时,会用不同颜色显示配对的括号,可以借助这个功能快速定位。

8.2 文本与数字混用

如果单元格里保存的是文本型数字,例如 “100000” 前面带了中文单引号,或者数字区域左上角有绿色小三角,那么>=100000的比较结果可能不符合预期。

处理办法:

  • 使用 VALUE 函数转换文本型数字为数值;
  • 选中单元格,点击左侧错误提示,选择“转换为数字”;
  • 养成输入数据时避免文本型数字的习惯。

8.3 嵌套层级超过限制

旧版 Excel 限制 IF 嵌套 7 层,新版本限制 64 层。虽然在实际业务中很少会写 7 层以上,但一旦超过,建议优先思考是不是公式结构设计不合理。

简化嵌套的方法之一是使用 Excel 2019 及以后版本的 IFS 函数,例如:

=IFS(B2>=90, "A", B2>=80, "B", B2>=60, "C", B2<60, "D")

但需要注意,IFS 函数在 Excel 2016 及更早版本中不可用。如果你的公司电脑还是旧版本,不要冒险使用。

8.4 使用公式求值检查问题

Excel 的“公式求值”功能是排查多条件判断问题的重要工具。

操作步骤:

  1. 选中包含公式的单元格;
  2. 点击“公式”选项卡;
  3. 选择“公式求值”;
  4. 点击“求值”按钮,逐步查看每一步计算结果。

这样可以清晰地看到 AND 和 OR 返回的是 TRUE 还是 FALSE,从而判断是条件写错还是结果返回逻辑写错。

9. 最佳实践与工程建议

9.1 复杂公式先拆分,再组合

不要一上来就写一个很长的嵌套公式。建议先在旁边用辅助列分别计算:

  • 辅助列1:销售额是否达标,公式=IF(B2>=100000, TRUE, FALSE)
  • 辅助列2:回款率是否达标,公式=IF(C2>=0.8, TRUE, FALSE)
  • 最终列:=IF(AND(D2, E2), "双达标", "需跟进")

逻辑验证无误后,再把辅助列公式合并成一个公式。这样做的好处是:

  • 表格每一步逻辑可读;
  • 定位问题更容易;
  • 与业务同事确认规则时也更直观。

9.2 条件优先级按从高到低排列

当多个 IF 嵌套时,建议先写“最严格”或“最特殊”的条件,再写一般条件。例如绩效评级时,先判断 >=90,再判断 >=80,避免把低等级条件覆盖高等级条件。

9.3 文本型结果尽量统一

Excel 公式返回的文本结果最好统一,避免“达标”“达标 ”“已达标”这类相似但不完全一致的写法。否则后续用 COUNTIF、VLOOKUP、数据透视表统计时,容易出现漏统计的问题。

建议提前约定结果词:

统一使用:达标 / 未达标 统一使用:正常 / 需跟进 统一使用:A / B / C / D

9.4 数据源规范比公式更重要

多条件判断的前提是源数据干净、规范。以下习惯能减少大量公式排错时间:

  • 日期统一为日期格式,不要混用文本日期;
  • 数字列保持数值格式,不要混入单位;
  • 文本列不要前后加多余空格;
  • 不要用合并单元格存储明细数据。

9.5 多条件判断的扩展学习方向

掌握 IF + AND + OR 之后,可以继续学习以下内容:

  • COUNTIFS、SUMIFS:按多个条件计数和求和;
  • IFERROR:配合 IF 公式处理错误值;
  • IFS:新版本 Excel 中替代多层 IF 嵌套的函数;
  • 数据验证与条件格式:让多条件判断结果自动变色;
  • 动态数组公式:Excel 365 中更灵活的计算方式。

如果你经常处理数据分析类工作,建议把 COUNTIFS 和 SUMIFS 一起学习,它们和多条件判断是同一类思维,学会一个就能举一反三。


如果你正在学习 Excel 函数,建议不要只复制文章里的公式,而是打开一张空表,把案例数据录入进去,亲手写一遍公式。遇到报错也不用着急,用“公式求值”功能逐步观察计算过程,很快就能理解 ENTER 背后发生了什么。

熟练掌握了 IF 嵌套 AND 和 OR 之后,绝大多数职场表格里的条件判断需求都能独立解决。遇到更复杂的规则,也只需要坚持“先把条件拆开、再组合”的思路,一步一步完成即可。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询