Table of contents
你在Excel中执行的许多任务都涉及到比较不同单元格中的数据。 为此,Microsoft Excel提供了六个逻辑运算符,它们也被称为比较运算符。 本教程旨在帮助你了解Excel逻辑运算符的见解,并为你的数据分析编写最有效的公式。
Excel逻辑运算符--概述
逻辑运算符在Excel中用来比较两个数值,逻辑运算符有时被称为布尔运算符,因为在任何情况下比较的结果只能是 "真 "或 "假"。
在Excel中,有六个逻辑运算符,下表解释了它们各自的作用,并通过公式实例说明了理论。
状况 | 运营商 | 公式示例 | 描述 |
等于 | =A1=B1 | 如果A1单元格中的数值与B1单元格中的数值相等,该公式返回TRUE;否则返回FALSE。 | |
不等于 | =A1B1 | 如果A1单元格中的数值不等于B1单元格中的数值,该公式返回TRUE;否则返回FALSE。 | |
大于 | > | =A1>B1 | 如果A1单元格中的数值大于B1单元格中的数值,该公式返回TRUE;否则返回FALSE。 |
少于 | < | =A1 如果A1单元格中的值小于B1单元格中的值,该公式返回TRUE;否则返回FALSE。 | |
大于或等于 | >= | =A1>=B1 | 如果A1单元格中的值大于或等于B1单元格中的值,该公式返回TRUE;否则返回FALSE。 |
小于或等于 | <= | =A1<=B1 | 如果A1单元格中的数值小于或等于B1单元格中的数值,该公式返回TRUE;否则返回FALSE。 |
下面的屏幕截图展示了由 等于 , 不等于 , 大于 和 少于 逻辑运算符。
看起来上表涵盖了所有内容,没有什么好说的了。 但事实上,每个逻辑运算符都有自己的特点,了解它们可以帮助你利用Excel公式的真正力量。
在Excel中使用 "等于 "逻辑运算符
ǞǞǞ 等于 逻辑运算符(=)可以用来比较所有的数据类型--数字、日期、文本值、布尔值,以及其他Excel公式返回的结果。 例如。
=A1=B1 | 如果A1和B1单元格中的值相同,返回TRUE,否则返回FALSE。 |
=A1="橙子" | 如果A1单元格包含 "oranges "一词,则返回TRUE,否则返回FALSE。 |
=A1=TRUE | 如果单元格A1包含布尔值TRUE,则返回TRUE,否则返回FALSE。 |
=A1=(B1/2) | 如果A1单元格中的数字等于B1除以2的商,返回TRUE,否则返回FALSE。 |
例1.使用 "等于 "操作符的日期
你可能会惊讶地发现, 等于 例如,如果A1和A2单元格包含日期 "12/1/2014",那么公式 =A1=A2
将返回TRUE,这是它应该做的。
然而,如果你尝试以下两种方法 =A1=12/1/2014
或 =A1="12/1/2014"
你会得到FALSE的结果。 有点出乎意料,是吗?
重点是,Excel将日期存储为数字,从1-1-1900开始,存储为1.日期12/1/2014存储为41974.在上述公式中,Microsoft Excel将 "12/1/2014 "解释为通常的文本字符串,由于 "12/1/2014 "不等于41974,它返回FALSE。
为了得到正确的结果,你必须总是在DATEVALUE函数中包裹一个日期,像这样 =A1=DATEVALUE("12/1/2014")
注意:DATEVALUE函数也需要与其他逻辑运算符一起使用,正如下面的例子所演示的那样。
当你在IF函数的逻辑测试中使用Excel的等价运算符时,也应采用同样的方法。 你可以在本教程中找到更多的信息以及一些公式实例:使用Excel IF函数处理日期。
例2.对文本值使用 "等于 "运算符
使用Excel的 等于 你应该记住的唯一一点是,如果你的操作符是文本值,那么就不需要任何额外的转折。 等于 Excel中的逻辑运算符是 不区分大小写 ,意味着在比较文本值时,忽略了大小写的差异。
例如,如果A1单元格中含有" 橙子 "和单元格B1包含" 橙子 ",该公式 =A1=B1
将返回TRUE。
如果你想比较文本值并考虑到它们的大小写差异,你应该使用EXACT函数而不是 等于 操作员。 EXACT函数的语法简单如。
EXACT(text1, text2)其中文本1和文本2是你想比较的值。 如果这些值完全相同,包括大小写,Excel返回TRUE;否则,它返回FALSE。 当你需要对文本值进行区分大小写的比较时,你也可以在IF公式中使用EXACT函数,如下面截图所示。
注意:如果你想比较两个文本值的长度,你可以用LEN函数代替,例如 =len(a2)=len(b2)
或 =LEN(A2)>=LEN(B2)
.
例3.布尔值和数字的比较
有一种普遍的观点认为,在Microsoft Excel中,布尔值TRUE总是等于1,FALSE等于0。 然而,这只是部分正确,这里的关键词是 "总是",或者更准确地说,"不总是" :)
在编写比较布尔值和数字的 "等于 "逻辑表达式时,你需要为Excel特别指出,非数字的布尔值应被视为数字。 你可以通过在布尔值或单元格引用前添加双减号来做到这一点,例如。 =A2=--TRUE
或 =A2=--B2
.
第一个减号,技术上称为单数运算符,将TRUE/FALSE分别强制为-1/0,第二个单数运算符将这些值否定为+1和0。
注意:在使用其他逻辑运算符时,你应该在布尔运算符前添加双单数运算符,如 不等于 , 大于 或 不到 来正确比较数字和布尔值。
在复杂的公式中使用逻辑运算符时,你可能还需要在每个返回TRUE或FALSE作为结果的逻辑表达式前添加双单数。 下面是这样一个公式的例子:Excel中的SUMPRODUCT和SUMIFS。
在Excel中使用 "不等于 "逻辑运算符
你使用Excel的 不等于 当你想确保一个单元格的值不等于一个指定的值时,可以使用操作符()。 使用 不等于 操作符的使用非常类似于 等于 我们刚才讨论过的。
所返回的结果是 不等于 下表提供了一些公式的例子。
不等于运营商 | 不起作用 | 描述 |
=A1B1 | =NOT(A1=B1) | 如果A1和B1单元格中的值不相同,返回TRUE,否则返回FALSE。 |
=A1 "橙子" | =NOT(A1="桔子") | 如果A1单元格包含 "oranges "以外的任何值,则返回TRUE;如果包含 "oranges "或 "ORANGES "或 "Oranges "等,则返回FALSE。 |
=A1TRUE | =NOT(A1=TRUE) | 如果A1单元格包含TRUE以外的任何值,则返回TRUE,否则返回FALSE。 |
=A1(B1/2) | =NOT(A1=B1/2) | 如果A1单元格中的数字不等于B1除以2的商,返回TRUE,否则返回FALSE。 |
=A1DATEVALUE("12/1/2014") | =NOT(A1=DATEVALUE("12/1/2014")) | 如果A1包含除2014年12月1日以外的任何值,无论日期格式如何,都返回TRUE,否则返回FALSE。 |
大于、小于、大于或等于、小于或等于
你在Excel中使用这些逻辑运算符来检查一个数字与另一个数字的比较情况。 Microsoft Excel提供了4种比较操作,其名称不言自明。
- 大于 (>)
- 大于或等于(>=)。
- 小于 (<)
- 小于或等于(<=)。
大多数情况下,Excel比较运算符用于数字、日期和时间值。 例如。
=A1>20 | 如果A1单元格中的数字大于20,返回TRUE,否则返回FALSE。 |
=A1>=(B1/2) | 如果A1单元格中的数字大于或等于B1除以2的商,返回TRUE,否则返回FALSE。 |
=A1 如果A1单元格中的日期小于2014年12月1日,返回TRUE,否则返回FALSE。 | |
=A1<=SUM(B1:D1) | 如果A1单元格中的数字小于或等于B1:D1单元格中的数值之和,返回TRUE,否则返回FALSE。 |
使用Excel的比较运算符与文本值
理论上,你也可以用 大于 , 大于或等于 运营商以及他们的 不到 例如,如果A1单元格包含" 苹果 "和B1包含" 香蕉 ",猜猜这个公式是什么 =A1>B1
恭喜那些押注在 "假 "上的人 :)
当比较文本值时,Microsoft Excel忽略了它们的大小写,并按符号进行比较,"a "被认为是最低的文本值,"z"--最高的文本值。
因此,当比较" 苹果 "(A1)和" 香蕉 "(B1),Excel分别以它们的第一个字母 "a "和 "b "开头,由于 "b "大于 "a",所以公式为 =A1>B1
返回FALSE。
如果第一个字母相同,那么就比较第二个字母,如果它们恰好也相同,那么Excel就会进入第三个、第四个字母,以此类推。 例如,如果A1包含" 苹果 "和B1包含" 龙舌兰 ",该公式 =A1>B1
将返回TRUE,因为 "p "大于 "g"。
乍一看,使用文本值的比较运算符似乎没有什么实际意义,但你永远不知道你将来会需要什么,所以可能这些知识会证明对某人有帮助。
Excel中逻辑运算符的常见用途
在实际工作中,Excel逻辑运算符很少单独使用,它们返回的布尔值TRUE和FALSE虽然非常真实(请原谅我的双关语),但意义不大。 为了得到更合理的结果,你可以将逻辑运算符作为Excel函数或条件格式化规则的一部分,如下面的例子所示。
1.在Excel函数的参数中使用逻辑运算符
说到逻辑运算符,Excel非常宽容,允许在许多函数的参数中使用它们。 最常见的用途之一是在Excel的IF函数中,比较运算符可以帮助构建一个逻辑测试,而IF公式将根据测试结果是TRUE还是FALSE返回一个适当的结果。 例如,。
=IF(A1>=B1, "OK", "不OK")
如果A1单元格中的数值大于或等于B1单元格中的数值,这个简单的IF公式返回OK,否则返回 "不OK"。
这里还有一个例子。
=if(a1b1, sum(a1:c1), "")
该公式比较了A1和B1单元格中的数值,如果A1不等于B1,则返回A1:C1单元格中的数值之和,否则为空字符串。
Excel逻辑运算符还广泛用于特殊的IF函数,如SUMIF、COUNTIF、AVERAGEIF及其复数对应函数,它们根据某个条件或多个条件返回结果。
你可以在以下教程中找到大量的公式例子。
- 在Excel中使用IF函数
- 如何在Excel中使用SUMIF
- 具有多个标准的Excel SUMIFS和SUMIF
- 在Excel中使用COUNTIF
- 具有多条标准的Excel COUNTIFS和COUNTIF
2.在数学计算中使用Excel的逻辑运算符
当然,Excel函数的功能非常强大,但你不一定非要用它们来达到理想的结果。 例如,以下两个公式返回的结果是相同的。
IF功能。 =IF(B2>C2, B2*10, B2*5)
带有逻辑运算符的公式。 =(B2>C2)*(B2*10)+(B2<=C2)*(B2*5)
我想IF公式更容易解释,对吗? 它告诉Excel,如果B2大于C2,就将B2单元格中的数值乘以10,否则B1中的数值就乘以5。
现在,让我们来分析一下第二个公式中的 大于 和 小于或等于 要知道,在数学计算中,Excel确实将布尔值TRUE等同于1,FALSE等同于0。 记住这一点,让我们看看每个逻辑表达式的实际返回值。
如果单元格B2中的一个值大于C2中的一个值,那么表达式B2>C2为真,因此等于1。另一方面,B2C2,我们的公式经历了以下转变。
因为任何数字乘以0都会得到0,所以我们可以抛开加号后的第二部分公式。 而且因为任何数字乘以1都是这个数字,我们的复杂公式变成了简单的=B2*10,返回B2乘以10的乘积,这正是上述IF公式的作用 :)
很明显,如果单元格B2中的值小于C2中的值,那么表达式B2>C2评估为FALSE(0),B2<=C2评估为TRUE(1),这意味着将发生上述的相反情况。
3.Excel条件格式化中的逻辑运算符
逻辑运算符的另一个常见用途是在Excel条件格式化中发现的,它可以让你快速突出电子表格中最重要的信息。
例如,以下简单的规则可以根据A列中的一个值,在你的工作表中突出显示选定的单元格或整个行。
小于(橙色)。 =A1<5
大于(绿色)。 =A1>20
关于详细的步骤说明和规则实例,请参见以下文章。
- Excel条件格式化公式
- 如何根据一个单元格的值改变行的颜色
- 基于单元格值改变背景色的两种方法
- 如何突出显示Excel中的每一行
正如你所看到的,在Excel中使用逻辑运算符是很直观和简单的。 在下一篇文章中,我们将学习Excel逻辑函数的核心和细节,它允许在一个公式中执行一个以上的比较。 请继续关注并感谢您的阅读!