IFS

IFS 函数检查指定表达式并根据计算结果为布尔值 TRUE 的第一个条件返回值。

IFS(IFS 表达式, IFS 为 TRUE, IFS 表达式…, IFS 为 TRUE…)

IFS 表达式: 逻辑表达式。 IFS 表达式可含有任何值,只要表达式可作为布尔值求值。如果表达式求得的值为数字,则 0 被视为 FALSE,任何其他数字则被视为 TRUE。

IFS 为 TRUE: IFS 表达式为 TRUE 时返回的值。 IFS 为 TRUE 可以包含任何值。如果省略 IFS 为 TRUE(有逗号,但无值)且 IFS 表达式的计算结果为 TRUE,IFS 返回 0。

IFS 表达式…: IFS 表达式为 FALSE 时要计算的可选逻辑表达式。 IFS 表达式可含有任何值,只要表达式可作为布尔值求值。如果表达式求得的值为数字,则 0 被视为 FALSE,任何其他数字则被视为 TRUE。

IFS 为 TRUE…: IFS 表达式… 为 TRUE 时返回的值。 IFS 为 TRUE 可以包含任何值。如果省略 IFS 为 TRUE…(有逗号,但无值)且 IFS 表达式… 的计算结果为 TRUE,IFS 返回 0。

注释

  • 如果所有表达式为 FALSE,则返回错误。

  • 如果之前所有表达式(包括 IFS 表达式以及 IFS 表达式… 所有实例)的计算结果均为 FALSE,你可以在公式中最后的 IFS 表达式… 中输入“TRUE”,后面紧跟 IFS 为 TRUE… 的默认值以指定结果。

使用 IFS 执行多个比较

下表显示学生成绩列表。

A

B

C

1

学生

分数

等级

2

1

4

优秀

3

2

2

掌握

4

3

3

熟练

5

4

未完成

6

5

3.2

熟练+

7

6

3.2

生疏

下表通过使用多个 IFS 表达式… 参数来返回与上表中分数关联的等级。

公式编辑器显示公式 =IFS(B2=4,"优秀",B2=3,"熟练",B2=2,"掌握",B2=1,"生疏")。

此公式中使用了以下参数:

  • IFS 表达式:B2=4,可检查 B2 是否等于 4。

  • IFS 为 TRUE:"优秀",如果 B2 等于 4,则返回该字符串。

  • IFS 表达式…:"B2=3",可检查 B2 是否等于 3。

  • IFS 为 TRUE…:"熟练",如果 B2 等于 3,则返回该字符串。

  • IFS 表达式…:"B2=2",可检查 B2 是否等于 2。

  • IFS 为 TRUE…:"掌握",如果 B2 等于 2,则返回该字符串。

  • IFS 表达式…:"B2=1",可检查 B2 是否等于 1。

  • IFS 为 TRUE…:"生疏",如果 B2 等于 1,则返回该字符串。

若要结合表格中的其他单元格使用上述公式,请将每个条件表达式中的 B2 更改为其他含分数的单元格。

IFS 表达式… 使用 TRUE

有时表达式的计算结果均不为 TRUE,而是返回错误,你可以在最后的 IFS 表达式… 中设定返回的字符串。在上表中,学生 4 没有分数,因此针对该学生,之前的公式会返回错误。此学生可能缺席或仍需完成该作业,所以如果不想保留错误,你可以添加另一个 IFS 表达式以将缺失的分数标记为“未完成”:

公式编辑器显示公式 =IFS(B5=4,"优秀",B5=3,"熟练",B5=2,"掌握+",B5=1,"生疏",TRUE,"未完成")。

在本示例中,单元格引用已更改以匹配学生 4 的分数单元格,但所有参数与上述相同,并且末尾还另外添加了一个 IFS 表达式

  • IFS 表达式…:TRUE,添加为最后一个表达式。

  • IFS 为 TRUE…:"未完成",如果无其他参数计算结果为 TRUE,则返回该字符串。

更复杂的比较

在某些情况下,你可能有需要使用混合比较运算符的更复杂表达式。上述数值范围涵盖全数字,比如说还有学生(学生 6)的分数为 3.2。你可以使用如下公式来解释分数介于四个主要等级之间的学生的情况(假设学生 5 的分数 B6 为 3.2):

公式编辑器显示公式 =IFS(B6=4,"优秀", B6>3, "熟练+",B6=3,"熟练",B6>2,"掌握+",B6=2,"掌握",B6>1,"生疏+",B5=1,"生疏",TRUE,"未完成")。

在本示例中,“优秀”、“熟练”、“掌握”和“生疏”等级之间都添加了额外的 IFS 表达式… 参数。

  • IFS 表达式…:"B6>3",可检查 B6 是否大于 3。

  • IFS 为 TRUE…:"熟练+",如果 B2 大于 3,则返回该字符串。

  • IFS 表达式…:"B6>2",可检查 B6 是否大于 2。

  • IFS 为 TRUE…:"掌握+",如果 B2 大于 2,则返回该字符串。

  • IFS 表达式…:"B6>1",可检查 B6 是否大于 1。

  • IFS 为 TRUE…:"生疏+",如果 B2 大于 1,则返回该字符串。

此公式适用是因为 IFS 会查找第一个结果为真的表达式。如果学生的分数不是 4,IFS 会检查其是否大于 3;学生 5 将会得到等级“熟练+”。作为另一个示例,分数为 2.5 的学生将会得到等级“掌握+”,因为其分数不是 4,也不大于或等于 3,但大于 2。

配合其他函数使用 IFS

IFS 可与其他函数配合使用。例如,此函数使用 MOD 来确定单元格 A2 中的年份(在本示例中 A2=2020)是否为闰年:

公式编辑器显示公式 =IFS(MOD($A2,4)≠0 ,FALSE,MOD($A2,100)≠0,TRUE,MOD($A2,400)≠0,FALSE, TRUE, TRUE)。

若要确定两个值是否不相等,请使用比较运算符 <>。

其他示例

=IFS(A2>91,"A",A2>82,"B",A2>73,"C",A2>64,"D",TRUE,"F") 让大于 91 的数字返回字母等级“A”,然后让大于 82 且小于 92 的数字返回“B”,并以此类推,让所有小于 65 的值返回“F”。

=IFS(A2>91,"A",A2>82,"B",A2>73,"C",A2>64,"D",A2<>0,"应考",TRUE,"不合格") 让大于 91 的数字返回字母成绩“A”,然后让大于 82 且小于 92 的数字返回“B”,并以此类推,让所有小于 65 但不等于 0 的值返回“应考”。如果分数为 0,公式返回“不合格”。

假设 A2 包含“A dog”

假设 A1 = COUNTMATCHES(A2, REGEX("\w+"))

=IFS(A1 = 0, "零个字", A1 = 1, "一个字", A1 = 2, "两个字", A1 > 2, "多个字") 返回“两个字”。

另请参阅ANDIFNOTOR
Morty Proxy This is a proxified and sanitized view of the page, visit original site.
有帮助?
字符限制: 250
最多 250 个字符。
感谢您的反馈。
Morty Proxy This is a proxified and sanitized view of the page, visit original site.