分享

逻辑函数and的用法(多条件"与"的关系)

 刘卓学EXCEL 2021-04-02

今天说另外一个逻辑函数and的用法,它是判断多个条件是否都成立,如果都成立,结果返回true,否则只要有1个条件不成立就返回false。它返回的结果也是逻辑值true或false。那么在说and函数之前,先说一下逻辑值是什么。

-01-

逻辑值

逻辑值只有true和false2个,true代表条件成立,false代表条件不成立。

形成逻辑值的方法有下面几种:

  1. 通过比较运算符,比如输入=2>1就会返回true。

  2. 逻辑函数and,or,not返回的结果。

  3. is类信息函数返回的结果,比如isnumber,istext,iserror等等。

  4. 其他函数,比如exact。

逻辑值在excel中是经常使用的,一定要掌握。

-02-

and函数

语法结构如下,最多可以有255个参数。

AND(logical1,[logical2],...)

logical1    必需      返回true或false的条件判断,可以是逻辑值,数组或引用。和if函数的第1参数是一样的,都是条件判断。

logical2    可选     其他返回true或false的条件判断(最多255个条件)。

and函数是检测所有的条件判断是否都是true,如果都是true,那么and函数返回true;只要有1个条件判断是false,and函数就会返回false。所以and函数是多条件【与】的关系,也就是且。

注意:

  • and函数的参数如果是数组,那么它的结果和sum函数一样只会返回1个值,而不是一个数组。

  • 参数的计算结果必须是逻辑值(如 TRUE 或 FALSE),或者参数必须是包含逻辑值的数组或引用。

  • 如果数组或引用参数中包含文本或空白单元格,则这些值将被忽略。

  • 如果指定的区域不包含逻辑值,则 AND 函数将返回 #VALUE! 错误。

-03-

示例说明

如下图所示,A列是一些公式,B列是说明,C列是结果。看第1条公式=AND(TRUE,TRUE),在参数中不是直接写的条件判断,而是条件判断的结果,2个参数都是true,说明2个条件判断都是成立的,所以and函数返回true。

再看最后一条公式=AND(2>1,2=3),2个参数都是条件判断,2>1成立返回true,2=3不成立返回false。有1个条件判断是false,and函数就返回false。

-03-

具体应用

1.如果语文和数学都大于90分,那么为优秀,否则为空

如下图所示,已经用条件格式将满足条件的标记出来。很明显这是个多条件【与】的判断,可以用之前的if函数嵌套来完成,在F10单元格中输入公式=IF(B10>90,IF(C10>90,"优秀",""),""),向下填充。

如果用and函数来完成呢?在D10单元格中输入公式=IF(AND(B10>90,C10>90),"优秀",""),向下填充。首先用and函数判断语文和数学是否都大于90,也就是AND(B10>90,C10>90)这部分,如果2个条件都成立,and函数就返回true,否则返回false。外层再用if函数进行判断,成立的返回”优秀“,否则返回空。

另一种做法就是用数组,在E10单元格中输入公式=IF(AND(B10:C10>90),"优秀",""),按ctrl+shift+enter三键。

B10:C10>90这部分是将语文和数学的分数与90分比较,形成一个逻辑值组成的数组{TRUE,TRUE};然后用and函数判断2个参数是否都为true,如果都为true,and返回true,否则and返回false;最后用if函数进行判断,是true,就返回"优秀",否则返回空。

2.员工提成计算问题

这是一个群友的问题,简单来说就是人数小于4人且人均消费大于等于70元,可提成10元;或者人数大于等于4人且人均消费大于等于60元,可提成10元。这个问题既有多条件【与】的关系,又有【或】的关系。虽然还没有学【或】的关系也就是or函数,但可以用if的嵌套来完成。

在E3单元格中输入公式=IF(AND(D3<4,B3/D3>=70),10,IF(AND(D3>=4,B3/D3>=60),10,)),向下填充。在这个公式中,if的第1参数是个and函数,嵌套的if函数第1参数也是个and函数。

AND(D3<4,B3/D3>=70)这部分就是判断人数小于4且人均消费大于等于70,如果这2个条件都成立,and返回true,那么if函数就返回10。否则这2个条件有1个不成立,and返回false,if函数返回嵌套的if接着对另外2个条件判断。

AND(D3>=4,B3/D3>=60)这部分就是判断人数大于等于4且人均消费大于等于60,如果这2个小于都成立,and返回true,嵌套的if返回10。否则这2个条件有1个不成立,and返回false,嵌套的if返回0。这样就判断完成。

简单来说,人数小于4人且人均消费大于等于70元,这2个条件是【与】的关系,可以把它们看成一个组;人数大于等于4人且人均消费大于等于60元,这2个条件也是【与】的关系,可以把他们看成第2组。然后第1组和第2组是【或】的关系。

文件链接:

https://pan.baidu.com/s/1X8xncIZn6f-37SnZyK9VBw 

提取码:m0bt 

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多