逻辑函数是 Excel 中一些最流行和最有用的函数。他们可以测试其他单元格中的值并根据测试结果执行操作。这有助于我们自动执行电子表格中的任务。
如何使用 IF 函数
IF 函数是 Excel 中的主要逻辑函数,因此是首先要了解的函数。它会在整篇文章中多次出现。
让我们看一下 IF 函数的结构,然后看一些它的使用示例。
IF 函数接受 3 位信息:
=IF(逻辑测试,[value_if_true],[value_if_false])
- logical_test:这是函数检查的条件。
- value_if_true:条件满足或为真时执行的操作。
- value_if_false:条件不满足或为假时执行的操作。
用于逻辑函数的比较运算符
使用单元格值执行逻辑测试时,您需要熟悉比较运算符。您可以在下表中看到这些的细分。
现在让我们看一下它的一些实际例子。
IF 函数示例 1:文本值
在此示例中,我们要测试单元格是否等于特定短语。IF 函数不区分大小写,因此不考虑大小写字母。
如果 B 列包含文本“已完成”,则在 C 列中使用以下公式显示“否”,如果包含其他任何内容,则显示“是”。
=IF(B2="完成","否","是")
尽管 IF 函数不区分大小写,但文本必须完全匹配。
IF 函数示例 2:数值
IF 函数也非常适合比较数值。
在下面的公式中,我们测试单元格 B2 是否包含大于或等于 75 的数字。如果是,则显示“通过”一词,否则显示“失败”一词。
=IF(B2>=75,"通过","失败")
IF 函数不仅仅是在测试结果上显示不同的文本。我们也可以用它来运行不同的计算。
在此示例中,如果客户花费一定金额,我们希望给予 10% 的折扣。我们将以 3,000 英镑为例。
=IF(B2>=3000,B290%,B2)
公式的 B290% 部分是一种可以从单元格 B2 中的值中减去 10% 的方法。有很多方法可以做到这一点。
重要的是您可以在value_if_true或value_if_false部分中使用任何公式。根据其他单元格的值运行不同的公式是一项非常强大的技能。
IF 函数示例 3:日期值
在第三个示例中,我们使用 IF 函数来跟踪截止日期列表。如果 B 列中的日期是过去的日期,我们希望显示“过期”一词。但如果日期是未来的日期,请计算截止日期前的天数。
下面的公式用于 C 列。我们检查单元格 B2 中的截止日期是否小于今天的日期(TODAY 函数从计算机时钟返回今天的日期)。
=IF(B2<TODAY(),"逾期",B2-TODAY())
什么是嵌套 IF 公式?
您之前可能听说过嵌套 IF 一词。这意味着我们可以在另一个 IF 函数中编写一个 IF 函数。如果我们有两个以上的动作要执行,我们可能想要这样做。
一个 IF 函数能够执行两个操作(thevalue_if_true和value_if_false)。但是,如果我们在该部分中嵌入(或嵌套)另一个 IF 函数value_if_false,那么我们可以执行另一个操作。
举个例子,如果 B2 单元格中的值大于或等于 90,则显示“Excellent”,如果值大于或等于 75,则显示“Good”,否则显示“Poor” .
=IF(B2>=90,"优秀",IF(B2>=75,"好","差"))
我们现在已经将我们的公式扩展到一个 IF 函数无法完成的范围。如有必要,您可以嵌套更多 IF 函数。
请注意公式末尾的两个右括号——每个 IF 函数一个。
有比这种嵌套 IF 方法更清晰的替代公式。一个非常有用的替代方法是Excel 中的 SWITCH 函数。
AND 和 OR 逻辑函数
当您要在公式中执行多个比较时,将使用 AND 和 OR 函数。单独的 IF 函数只能处理一个条件或比较。
举个例子,我们根据客户花费的金额和他们成为客户的年限将价值打折 10%。
AND 和 OR 函数本身将返回 TRUE 或 FALSE 的值。
AND 函数仅在满足所有条件时返回 TRUE,否则返回 FALSE。如果满足一个或所有条件,则 OR 函数返回 TRUE,仅当不满足任何条件时才返回 FALSE。
这些函数最多可以测试 255 个条件,因此当然不限于这里演示的两个条件。
下面是 AND 和 OR 函数的结构。他们写的一样。只需将名称 AND 替换为 OR。只是他们的逻辑不同而已。
=AND(逻辑 1,[逻辑 2] ...)
让我们看一个他们都评估两个条件的例子。
AND 函数示例
下面使用 AND 函数来测试客户是否花费至少 £3,000 并且成为客户至少三年。
=AND(B2>=3000,C2>=3)
您可以看到它为 Matt 和 Terry 返回 FALSE,因为尽管他们都满足其中一个条件,但他们需要通过 AND 函数同时满足这两个条件。
或函数示例
下面使用 OR 函数来测试客户是否花费至少 £3,000 或成为客户至少三年。
=OR(B2>=3000,C2>=3)
在此示例中,公式为 Matt 和 Terry 返回 TRUE。只有 Julie 和 Gillian 无法满足这两个条件并返回 FALSE 的值。
将 AND 和 OR 与 IF 函数一起使用
因为 AND 和 OR 函数在单独使用时会返回 TRUE 或 FALSE 的值,所以很少单独使用它们。
相反,您通常将它们与 IF 函数一起使用,或者在条件格式或数据验证等 Excel 功能中使用,以便在公式计算结果为 TRUE 时执行一些追溯操作。
在下面的公式中,AND 函数嵌套在 IF 函数的逻辑测试中。如果 AND 函数返回 TRUE,则从 B 列中的金额中扣除 10%;否则,不提供折扣,B 列中的值在 D 列中重复。
=IF(AND(B2>=3000,C2>=3),B290%,B2)
异或函数
除了OR函数,还有异或函数。这称为 XOR 函数。XOR 函数是在 Excel 2013 版本中引入的。
此功能可能需要一些努力才能理解,因此显示了一个实际示例。
XOR 函数的结构与 OR 函数相同。
=异或(逻辑1,[逻辑2] ...)
当仅评估两个条件时,XOR 函数返回:
- 如果任一条件的计算结果为 TRUE,则为 TRUE。
- 如果两个条件都为 TRUE,则为 FALSE,或者两个条件都不为 TRUE。
这与 OR 函数不同,因为如果两个条件都为 TRUE,OR 函数将返回 TRUE。
当添加更多条件时,此功能会变得更加混乱。然后 XOR 函数返回:
- 如果奇数个条件返回 TRUE,则为 TRUE。
- 如果偶数个条件结果为 TRUE,或者如果所有条件都为 FALSE,则为 FALSE。
让我们看一个 XOR 函数的简单示例。
在此示例中,销售额分为一年的两个半年。如果销售人员在两半中的销售额都达到 3,000 英镑或更多,那么他们将被指定为黄金标准。这是通过本文前面的 IF 的 AND 函数实现的。
但是,如果他们的任何一半都卖出了 3,000 英镑或更多,那么我们就想给他们分配白银身份。如果两者都卖不到 3,000 英镑或更多,那就什么都没有。
XOR 函数非常适合这种逻辑。下面的公式被输入到 E 列,并显示 XOR 函数与 IF 仅在满足任一条件时显示“是”或“否”。
=IF(XOR(B2>=3000,C2>=3000),"是","否")
NOT 函数
本文要讨论的最后一个逻辑函数是 NOT 函数,我们将最简单的函数放在最后。尽管有时一开始很难看出该功能在“现实世界”中的用途。
NOT 函数反转其参数的值。因此,如果逻辑值为 TRUE,则返回 FALSE。如果逻辑值为 FALSE,它将返回 TRUE。
这将更容易用一些例子来解释。
NOT 函数的结构是;
=NOT(逻辑)
NOT 函数示例 1
在这个例子中,假设我们在伦敦有一个总部,然后是许多其他区域站点。如果站点是除伦敦以外的任何站点,我们希望显示“是”一词,如果是伦敦,则显示“否”。
NOT 函数已经嵌套在下面的 IF 函数的逻辑测试中,以反转 TRUE 结果。
=IF(NOT(B2="伦敦"),"是","否")
这也可以通过使用 <> 的 NOT 逻辑运算符来实现。下面是一个例子。
=IF(B2<>"伦敦","是","否")
NOT 函数示例 2
在 Excel 中使用信息函数时,NOT 函数很有用。这些是 Excel 中的一组函数,用于检查某些内容,如果检查成功则返回 TRUE,否则返回 FALSE。
例如,ISTEXT 函数将检查单元格是否包含文本,如果包含则返回 TRUE,否则返回 FALSE。NOT 函数很有用,因为它可以反转这些函数的结果。
在下面的示例中,我们要向销售人员支付他们追加销售金额的 5%。但是,如果他们没有追加销售任何东西,则单元格中会出现“无”一词,这将在公式中产生错误。
ISTEXT 函数用于检查文本是否存在。如果有文本,则返回 TRUE,因此 NOT 函数将其反转为 FALSE。并且 IF 执行其计算。
=IF(NOT(ISTEXT(B2)),B25%,0)
掌握逻辑函数将为您作为 Excel 用户带来很大优势。能够测试和比较单元格中的值并根据这些结果执行不同的操作非常有用。