excel表函数IF(AND(NOT(A1),B1),IF(NOT(B1),1,2),IF(OR(A1,NOT(B1),3,4)))是什么
首先这个公式有点问题,公式倒数第三个括号位置不对,应该是
=IF(AND(NOT(A1),B1),IF(NOT(B1),1,2),IF(OR(A1,NOT(B1)),3,4))
否则最后一层IF函数两个分支都缺省了,不符合语法。
这个公式结构挺复杂的,不知道是要做什么。
由于有NOT(A1)、NOT(B1),那么不出意外A1、B1可能都是数值,或者是逻辑值,如果是文本就会出错。
数值作为逻辑值参与运算的规则,0为FALSE,大于等于1为TRUE。如果A1=0,作为逻辑值么A1=FALSE;进一步地,NOT是对逻辑值求反,那么NOT(A1)=NOT(FALSE)=TRUE.
从结构上看,这是一个IF函数的嵌套,可以一层层的剥:
最外面一层:
IF(AND(NOT(A1),B1),分支1,分支2)。其中判断式是AND(NOT(A1),B1),AND执行“逻辑与”运算就是说看是否同时满足NOT(A1)和B1的条件。
如果A1=0,B1=2,那么AND(NOT(A1),B1)=AND(TRUE,TRUE)=TRUE,执行分支1的运算。否则执行分支2。
分支1:
分支1也是一个IF函数IF(NOT(B1),1,2)=IF(FALSE,1,2),判断式为假,所以A1=0,B1=2时,执行分支1;而分支1又执行为假时的判断,则整个公式到此为止,返回结果为2。
分支2:
分支2又是一个IF函数IF(OR(A1,NOT(B1)),3,4),当主函数IF条件为FALSE时执行分支2。我们假设刚才的情形倒过来,A1=2,B1=0,则公式执行分支2。
再来看分支2是什么结果IF(OR(A1,NOT(B1)),3,4))=IF(OR(TRUE,TRUE),3,4)=IF(TRUE,3,4)=3
也就是说整个公式的结果只能有2和3两种可能性,挺无聊的。就当是做逻辑函数和函数嵌套的练习题
非=NOT(逻辑值或比较表达式1)。
NOT函数是用于对参数值求反的一种Excel函数。当要确保一个值不等于某一特定值时,可以使用NOT函数。简言之,就是当参数值为TRUE时,NOT函数返回的结果恰与之相反,结果为FALSE。
鹏仔微信 15129739599 鹏仔QQ344225443 鹏仔前端 pjxi.com 共享博客 sharedbk.com
图片声明:本站部分配图来自网络。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!