EXCEL中的and和or在逻辑运算中的应用.doc

上传人:鲁** 文档编号:543794205 上传时间:2023-05-28 格式:DOC 页数:4 大小:29.01KB
返回 下载 相关 举报
EXCEL中的and和or在逻辑运算中的应用.doc_第1页
第1页 / 共4页
EXCEL中的and和or在逻辑运算中的应用.doc_第2页
第2页 / 共4页
EXCEL中的and和or在逻辑运算中的应用.doc_第3页
第3页 / 共4页
EXCEL中的and和or在逻辑运算中的应用.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《EXCEL中的and和or在逻辑运算中的应用.doc》由会员分享,可在线阅读,更多相关《EXCEL中的and和or在逻辑运算中的应用.doc(4页珍藏版)》请在金锄头文库上搜索。

1、EXCEL中的*和and,+和or在逻辑运算中的应用认为*是and(且)、认为+是or:比如公式1可以这么解释A列=小王且B列=收,对C列求和;公式2解释为A列是小王或者A列是小张,则对C列求和。而实际上这个似乎非常符合汉语习惯的让人觉得非常“正确”的理解却是不完全的。此时的*号和+号仍然是乘和加的作用。方法:工具公式审核一步步看公式的结果就知道了*和+号两边得到的是true,false组成的逻辑值数组,用于运算时true*true=1,true*false=0,true与任一数字作算术运算,得到原数字;false与任一数字作算术运算,得到0,得出结果如果用于IF判断,0=False、其他数值

2、=True;如果用于下一步计算(比如公式1后面的直接*C2:C10)则也是用1、0代入的(1*数值=数值本身,0*数值=0)1、简单例子以及容易产生的“理解”逻辑判断公式中,常常见到条件相*或相+,也常见到and和or,比如:=if(and(A10,A10)*(A10,A18),B1,C1)VS=if(A18),B1,C1)对比or和+以上两种情况是完全可以互换的(等价的)。由此,初学函数的朋友就容易产生这么一种理解:“*就是and(而且的意思)+就是or(或者的意思)”在某种意义上来说快速地解读公式含义的话,这个“理解”听起来最容易接受了。但不要由此就把这种逻辑判断中的理解扩散成“完全等价”

3、!请看下一点:在以下两个条件求和中:(数组公式,按Ctrl+shift+enter结束)(假设A1=4,A2=21;B1=5,B2=11)=sum(if(and(A1:A20,A1:A20)*(A1:A20)*(A1:A20)+(A1:A20,A1:A28),B1:B2)=sum(if(and(True;True,True;False),B1:B2)=sum(if(False,B1:B2)=0and(True;True,True;False)有出现False返回False;or公式类似。由*、+得到的是:=sum(if(1;0,B1:B2)=sum(5;False)=5可以用F9键在编辑栏看出

4、。而=sum(if(2;1,B1:B2)=sum(5;11)=16注:在逻辑判断if的条件中,0=False;非0的数值都=True从以上的对比可以看出:运算符*和+在逻辑判断中与and和or是不同的,前者得到的是数组,后者只能得到单值.在数组运算的情况下由于不能匹配故不能互换。*和+的用法,实际上是针对相同尺寸的逻辑数组的算术运算,逻辑数组A*(+)逻辑数组B=逻辑数组C。而and(逻辑数组,逻辑数组)和or(逻辑数组,逻辑数组)中and和or的参数可以是数组,但却不是数组运算,没有数组的对应关系,其结果返回单值。所以两者是不能等价的。从上面的知识点拓展一下,平时看到很多形式如if(条件1*

5、条件2*,统计区域) 的简化if法(满足所有条件,返回统计区域,否则返回False(简化没写)。即数值和False组成的数组)和连乘法(利用数组相乘返回数组即数值和0的数组)原理并不相同.这一点狗尾草版主也强调过.在sum中,因为简化没写的0(简化if法返回)对于加总求和并没有影响,所以大多可以通用。在Average、Max、Min等函数中则不能通用:False在计算中大多情况=0,但并非都是这样。比如Average会将连乘法中0算入平均的个数,而不会将简化if法中的False算入个数。而由满足条件的值都是负数的情况下,max连乘法将得到0,max简化if法得到的才是正确答案。连乘法对应的不是简化if法,而是if(条件1*条件2*,统计区域,0)。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号