
Excel中的逻辑函数主要用于在公式中对条件进行测试,并根据测试结果返回不同的数值,从而使公式更加智能。
一、TRUE。
功能:返回逻辑值TRUE。
目的:判断两个值是否相等。

方法:
在目标单元格中输入公式:=B3=C3,如果返回TRUE,则代表单元格B3和C3的值相同。
二、FALSE。
功能:返回逻辑值FALSE。
目的:判断两个值是否不等。

方法:
在目标单元格中输入公式:=B3=C3,如果返回FALSE,则代表单元格B3和C3的值不等。
三、TRUE(FALSE)应用技巧。
目的:计算两列中相同数据的个数。

方法:
在目标单元格中输入公式:=SUM((B3:B9=C3:C9)*1),并用Ctrl+Shift+Enter填充。
解读:
1、在逻辑值中,TRUE同1、FALSE同0的作用是相同的,公式中首先判断B列和C列的值是否相等,如果相等,则返回TRUE,即1,否则返回FALSE,即0,然后对其进行求和运算。
2、如果要计算两列中不同数据的个数,只需将公式修改为:=SUM((B3:B9<>C3:C9)*1)即可。
四、Not。
功能:对逻辑值求反。
语法结构:=Not(条件或逻辑值)。
注意事项:
1、如果逻辑值为FALSE,则Not函数将返回TRUE,如果逻辑值为TRUE,Not函数将返回FALSE。
2、如果Not函数的参数是文本型数字或文本,Not函数将返回错误值“#VALUE!” 。
目的:计算区域中数值的个数。

方法:
在目标单元格中输入公式:=SUM(NOT(ISERROR(NOT(E3:E12)))*1),并用Ctrl+Shift+Enter填充。
解读:
1、Iserror函数的作用为:检测一个值是否为错误,如果是返回TRUE,否则返回FALSE。
2、当Not函数的参数中包含非逻辑值时将返回错误值,因此公式ISERROR(NOT(E3:E12))对包含非数字的单元格返回TRUE,而对包含数字的单元格返回FALSE,再用Not函数对Iserror函数返回的包含逻辑值的数组公式求反,将得到的数组×1,即将逻辑值转换为数字,最后用Sum函数对包含数字1和0的数组求和,得到区域内数字的个数。
五、And。
功能:判断多个条件是否同时成立。
语法结构:=And(条件1,[条件2],[条件3]……)。
注意事项:
1、所有参数都可以是逻辑值TRUE或FALSE,或者是可以转换为逻辑的表达式。
2、如果参数是文本型数字或文本,And函数将返回错误值“#Value” 。
目的:判断员工是否退休(男,55岁退休,女,50岁退休)。

方法:
在目标单元格中输入公式:=IF(AND(C3>55,D3="男"),"退休",IF(AND(C3>50,D3="女"),"退休",""))。
解读:
首先判断C3>55,D3=“男”是否同时成立,如果成立,直接返回“退休”,如果不成立,继续判断C3>50,D3="女"是否成立,如果成立,返回“退休”,否则返回空值。
六、Or。
功能:判断多个条件中是否至少有一个条件成立。
语法结构:=Or(条件1,[条件2],[条件3]……)
注意事项:
1、所有参数都可以是逻辑值TRUE或FALSE,或者是可以转换为逻辑的表达式。
2、如果参数是文本型数字或文本,Or函数将返回错误值“#Value” 。
目的:“年龄”<35岁或“学历”为“大本”,则为“符合条件”。

方法:
在目标单元格中输入公式:=IF(OR(C3<35,F3="大本"),"符合条件","")。
解读:
Or函数的条件中只要有一个条件成立,就返回True。
七、Xor。
功能:判断多个条件中是否有一个条件成立。
语法结构:=Xor(条件1,[条件2],[条件3]……)。
注意事项:
1、如果测试的条件都为TRUE或都为FALSE,Xor函数返回FALSE,否则返回TRUE。
2、如果参数是文本型数字或文本,Xor函数将返回错误值“#Value” 。
目的:“年龄”<35,“学历”为“大本”,只要满足一个条件的,则为“符合条件”,两个条件都满足的,“不符合条件”。

方法:
在目标单元格中输入:=IF(XOR(C3<35,F3="大本"),"符合条件","")。
解读:
公式=IF(OR(C3<35,F3="大本"),"符合条件","")和=IF(XOR(C3<35,F3="大本"),"符合条件","")是有区别的,公式=IF(OR(C3<35,F3="大本"),"符合条件","")中“条件1”和“条件2”至少满足一个就是“符合条件”,而公式=IF(XOR(C3<35,F3="大本"),"符合条件","")中,当两个条件同时成立或同时不成立时,都为“不符合条件”。
八、If。
功能:根据条件判断而返回不同结果。
语法结构:=If(条件,条件为真时的返回值,条件为假时的返回时)。
备注:
已在前文中有所涉及,不再赘述。
九、Ifna。
功能:判断公式是否出现#N/A错误。
语法结构:=Ifna(值或表达式,值或表达式返回#N/A错误时想要输出的信息)。
目的:查询员工的“月薪”,当查询不到信息时,返回“无此员工信息”。

方法:
在目标单元格中输入公式:=IFNA(VLOOKUP(J3,B3:G12,6,0),"无此员工信息")。
解读:
由于数据源中没有“许由”,所以Vlookup函数返回#N/A ,用Ifna函数判断后,返回“无此员工信息”。
十、Iferror。
功能:根据公式结果返回不同内容。
语法结构:=Iferror(值或表达式,值或表达式有错误时想要输出的信息)。
注意事项:
值或表达式返回的错误可以是:#N/A 、#VALUE 、#REF!、#DIV/0!、#NUM!、#NAME或#NULL! 。
目的:查询员工的“月薪”,当查询不到信息时,返回“无此员工信息”。

方法:
在目标单元格中输入公式:=IFERROR(VLOOKUP(J3,B3:G12,6,0),"无此员工信息")。
@Excel函数公式
#Excel函数公式#
#职场达人炼成记#
#职场达人说#