Excel IFS 函数

2025年3月17日 | 阅读 7 分钟

在使用 Excel 工作表时,你经常需要在工作表中使用多个 IF 函数。Microsoft Excel 提供了内置的 IFS 函数,而不是重复使用 IF 函数。Excel IFS 函数是一个逻辑函数,用于应用多个 IF 函数。此函数允许用户测试多个条件。

本教程将详细介绍 IFS 函数、其语法、参数和返回值。我们将使用 IFS 函数解决示例,以了解此函数在 Excel 中的使用概览。

什么是 IFS 函数?

Excel IFS 函数可以运行多个测试并返回与第一个 TRUE 结果相对应的值。Excel 用户在工作表中加入 IFS 函数,以评估多个条件,而无需使用多个嵌套 IF 语句。

IFS 函数评估多个条件并返回与第一个 TRUE 值相对应的输出。当您需要一个自包含的公式来同时测试各种条件而无需嵌套多个 IF 语句时,可以使用 IFS 函数。使用 IFS 函数的优点是它创建了一个易于阅读和编写的简短公式。

尽管您可以向 IFS 函数提供多个条件作为测试/值对,但此函数的上限为 127 个条件。每个测试都代表一个逻辑测试,返回布尔值 TRUE 或 FALSE,如果任何指定的测试返回 TRUE,则将返回相应的值。如果多个条件返回 TRUE,此函数将返回与第一个 TRUE 结果相对应的第一个值。因此,评估公式中条件排列的顺序至关重要。

语法

=IFS (测试1, 值1, [测试2, 值2], ...)

参数

  • 测试1(必需)- 此参数表示第一个逻辑测试。
  • 值1(必需)- 此参数表示当测试1为 TRUE 时的输出。
  • 测试2(可选)- 与测试1参数不同,它表示第二个逻辑测试。
  • 值2(可选):此参数表示测试2的值对

返回

Excel IFS 函数返回与第一个 TRUE 结果相对应的值

示例

#IFS 示例1:使用 Excel IFS 函数,计算下表中指定学生分数的等级。

在下表中,我们有三个字段,即 A 列中的“学生学号”,B 列中的“学生分数”,C 列中的学生等级。根据“学生分数”列,计算需要为数据集中每个学生分配特定评语的学生的等级。

分数级别
分数 > 550A1
分数 > 500A2
分数 > 400B1
分数 > 300B2
分数 > 250C1
分数> 200C2
分数<200不及格!

Excel IFS Function

按照以下步骤运行多个测试并使用 Excel IFS() 函数返回与第一个 TRUE 结果相对应的值

步骤 1:选择一个单元格来计算学生的等级

将鼠标光标放在分数列的第一个单元格中,以便我们根据上述分数表输入公式并找到指定分数的等级。在本例中,我们选择了 Excel 工作表的 C2 单元格。

请参考下图:

Excel IFS Function

步骤 2:输入 IFS 函数

根据等级表计算等级。使用等号 (=) 后跟内置的 Excel IFS 函数开始公式。

Excel IFS Function

步骤 3:插入所有参数

  • 首先,您必须指定第一个测试参数。在这里,我们将指定分数 > 550。公式将是 =IFS(B2>550,
  • 接下来,我们将指定如果上述测试参数评估为 TRUE 将返回的值参数。公式将是 =IFS(B2>550, "A1",
  • 同样,我们将指定后续的测试和值参数以满足进一步的条件。
    总公式变为
    =IFS(B2>550,"A1",B2>500,"A2",B2>400,"B1",B2>300,"B2", B2>250,"C1", B2>200,"C2",B2<=200,"Fail!")

步骤 4:IFS 函数将返回等级

结果,IFS 函数将返回等级 A1,因为分数大于 550。

Excel IFS Function

步骤 5:将 IFS 公式拖动到以下单元格

选择 C2 公式单元格,并将鼠标指针移到所选框的右下角。您会注意到在右侧,光标将变为加号 (+) 图标。

将图标拖动到以下单元格,你会惊讶地发现公式将被复制到所有单元格,并相应地更改引用单元格。它将根据等级表返回等级。

Excel IFS Function

太棒了,没有任何嵌套 IF 的麻烦,我们根据给定的分数等级获得了学生的等级。

说明

IFS 函数检查第一个条件 - 如果 556>600,结果为 TRUE;因此,它返回等级 A1。同样,对于以下单元格公式,第一个测试被评估为 FALSE (345>600)。它检查以下条件 - 如果 345 > 500,再次评估为 FALSE。它移动到下一个条件 - 如果 345> 400,当此条件也评估为 FALSE 时,它移动到下一个条件检查 - 如果 345> 300,这被证明是 TRUE,它返回 B2。同样,它评估所有单元格的公式并返回等级输出。

示例 2 - 示例演示 IFS 函数不存在默认值。

在上面的示例中,我们已经看到了 IFS 函数如何为每个单元格返回所需的完美等级值,但是如果任何指定条件都不存在测试参数怎么办?

例如,假设在上面的示例中,我们只添加了一个新行,其中包含学生分数 620;此指定公式中没有与此值匹配的测试条件。因此,此函数将返回 #N/A 错误。

让我们看看下面。

Excel IFS Function

按照以下步骤运行多个测试并使用 Excel IFS() 函数返回默认值

步骤 1:选择一个单元格来计算学生的等级

将鼠标光标放在分数列的第一个单元格中,以便我们根据上述分数表输入公式并找到指定分数的等级。在本例中,我们选择了 Excel 工作表的 C2 单元格。

请参考下图:

Excel IFS Function

步骤 2:输入 IFS 函数

根据等级表计算等级。使用等号 (=) 后跟内置的 Excel IFS 函数开始公式。

Excel IFS Function

步骤 3:插入所有参数

  • 首先,您必须指定第一个测试参数。在这里,我们将指定 600>分数。公式将是 =IFS(600>B11,
  • 接下来,我们将指定如果上述测试参数评估为 TRUE 将返回的值参数。公式将是 =IFS(600>B11,"A1",
  • 同样,我们将指定后续的测试和值参数以满足进一步的条件。
    总公式变为
    =IFS(600>B11,"A1",550>B11,"A2",500>B11,"B1",400>B11,"B2", 300>B11,"C1", 250>B11,"C2",200>B11,"Fail!")
Excel IFS Function

步骤 4:IFS 函数将返回错误

由于值 645 不属于任何给定条件,因此它应根据 Excel 公式规则返回默认函数值。由于 IFS 没有任何默认值,它将返回 #N/A 错误。

Excel IFS Function

注意事项

  1. IFS 函数没有任何预定义的默认值,当所有给定条件都不满足时可以使用。
  2. 要提供默认值,请将 TRUE 作为最终测试输入,并在所有给定条件都返回 FALSE 时返回一个值。
  3. 所有指定的逻辑条件都必须返回 TRUE 或 FALSE。任何其他输出都将强制 IFS 返回 #VALUE! 错误。
  4. 如果所有指定条件均未返回 TRUE,则 IFS 函数将返回 #N/A 错误。

IFS 与 Switch 的区别

你们中的许多人可能认为 IFS 函数与 SWITCH 函数类似,但 Excel IFS 函数允许用户在单个封闭公式中测试多个条件。尽管 Switch 和 IFS 函数在包含许多条件时都易于编写和理解,但它们都有各自的优缺点。为了更好地理解它们的区别,以下是比较表

序号IFSSWITCH
1在 IFS 中,您需要重复表达式才能获取所需结果。在 Switch 函数中,无需重复表达式,因为它只需在函数中使用一次。
2Excel IFS 函数不接受任何默认值。Excel SWITCH 函数可以接受默认值。
3此函数不限于精确匹配。此函数仅限于精确匹配
4IFS 函数需要每个条件的表达式,因此您可以根据需要使用逻辑运算符。无法使用大于 (>) 或小于 (<) 等运算符的标准语法

IFS 对比嵌套 IF 语句

Excel IFS 函数是在 MS Excel 2019 中引入的。在此之前,如果用户被迫使用嵌套 IF 语句。尽管两种公式的工作方式相同,但与 IFS 函数相比,嵌套 IF 语句要复杂得多,并且更容易出错。

嵌套 IF 函数之所以复杂,唯一原因是嵌套 IF 的公式使用了多个括号和相互嵌套的 IF 函数,而 IFS 函数则没有这种情况。因此,IFS 函数脱颖而出并成为赢家。此外,IFS 的语法比嵌套 IF 相对容易,并且易于理解。