分享

精通Excel数组公式012:布尔逻辑:AND和OR

 hercules028 2021-01-18

excelperfect

导言:本文为《精通Excel数组公式(学习笔记版)》中的一部分内容节选。如果你想要系统学习并熟练掌握Excel数组公式,可以到知识星球App的完美Excel社群下载这本电子书学习。

布尔(Boolean)是一种数据类型,仅有两个值,即TRUE或FALSE,或者1或0:

TRUE = 1

FALSE = 0

在Excel公式中,经常要用到逻辑条件。对于AND条件来说,只有所有的逻辑测试都为TRUE时,结果才为TRUE;对于OR条件来说,只要有一个逻辑测试为TRUE,结果就是TRUE。下图1列出了3个条件时的所有逻辑测试。

图1

AND条件

当执行AND逻辑测试时,所有的测试都必须为TRUE,最终的AND逻辑测试结果才是TRUE。如果任何一个逻辑测试为FALSE,AND逻辑测试的结果为FALSE。

下面展示了一些AND条件的示例。

图2:公式[1]至[4]使用了AND条件。公式[5]使用布尔乘法的AND条件。公式[6]使用布尔乘法和除法的AND条件。公式[7]使用IF函数和布尔AND条件。

图3:带筛选的数据透视表执行AND条件的求和运算。

图4:具有已应用筛选和总计行的表功能可以使用AND条件进行平均值计算。

图5:筛选功能可以使用AND条件筛选表。


图6:高级筛选功能可以使用AND条件提取记录。

图7:在辅助列中使用了带有4个逻辑测试的AND函数。

图8:使用逻辑测试相乘来创建布尔辅助列。

正如在上述例子中所看到的,诸如像SUMIFS函数、使用布尔运算或IF函数的数组公式、数据透视表、带有筛选和汇总行的表、筛选、高级筛选、以及辅助列解决方法都可以使用AND条件运算。

OR条件

当执行OR逻辑测试时,只要有一个测试为TRUE,最终的OR逻辑测试结果就是TRUE。只有当所有的逻辑测试都为FALSE时,OR逻辑测试的结果才为FALSE。我们经常使用“至少有一个”和“一个或多个”逻辑测试来描述OR逻辑测试。

下面是两个OR条件的示例。

图9:单元格中的姓名是否是“Gidget”或“Rodger”。

图10:测试客户的净资产大于100000,或者信用评级大于或等于3.5。

上图10所示的例子中,OR条件测试获得了两个TRUE值,此时必须小心,特别是使用其作为另一公式的元素时。

1.OR逻辑测试结果为1个TRUE值:通常指向单个单元格且遍历单列。

2.OR逻辑测试结果多于1个TRUE值:通常指向不同的单元格且遍历多列。

示例:使用不能返回多个TRUE值的OR逻辑测试统计

如下图11所示,使用了5个公式分别统计满足条件的项目数量。

图11:OR条件统计在单个单元格且单列中查找。

示例:使用返回多个TRUE值的OR逻辑测试统计

如下图12所示,如果在创建OR条件公式时不细心,那么可能会统计两次。示例统计净资产大于100000或者信用评级大于等于3.5的客户数。因为两个问题在两列中查询,对于特定的客户可能会返回两个TRUE值,导致该客户被统计两次,例如Fruits Inc.的净资产大于100000且信用评级大于等于3.5,在公式[4]和[5]中对该公司统计了两次,返回不正确的结果。而公式[1]、[2]和[3]只统计一次,返回正确的结果。

图12:OR逻辑测试指向两个不同的单元格,因此可能返回两个TRUE值;OR条件统计公式查找两列。

用于求和、求平均值和查找最小或最大值的OR条件

示例如下图13至图15所示。

图13:使用应用到单列的OR条件来求和和求平均值。

图14:使用应用到不同列的OR条件来求和和求平均值。单个的OR逻辑测试可能产生多个TRUE值。

图15:使用应用到不同列的OR条件来求最小值和最大值。单个的OR逻辑测试可能产生多个TRUE值。在AGGREGATE函数的公式中,使用除法剔除0值。

在公式中同时使用AND条件和OR条件:OR逻辑测试不会返回多个TRUE值

当在公式中同时使用AND条件和OR条件时,仍然取决于OR逻辑测试是否返回多个TRUE值。

如下图16所示,求区域West和Midwest在2019年3月18日和2019年5月12日之间的数量、营业额之和、最小营业额和平均营业额。

图16:AND和OR条件,此时OR逻辑测试指向单列。

在公式中同时使用AND条件和OR条件:OR逻辑测试会返回多个TRUE值

如下图17所示,求净资产大于100000,净收入大于等于37500,信用评级1大于等于3.5或信用评级2大于等于6的客户数、最大净资产和平均净资产。

图17:AND和OR条件,此时OR逻辑测试指向多列。

注:如果有多个OR条件,可以使用ISNUMBER函数和MATCH函数的组合。

欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。

欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多