职场必备Excel技巧:多条件混合判断给定条件
逻辑值有TRUE和FALSE,主要由“>、<、>=、<=、<>、=”等比较运算和“ISNUMBER、ISTEXT、ISERROR”等IS函数返回,用来描述逻辑是否成立。“5>4”这个运算返回TRUE,表示这个判断成立,“ISTEXT(1)”返回FALSE,表示判断不成立,因为1是数字不是文本。
逻辑函数用来处理单个或多个逻辑值的逻辑关系,并最终返回逻辑值,用以描述更加复杂的逻辑。常用的逻辑关系有“与”、“或”、“非”,分别表达“必须同时满足”、“只要有一个满足”、“逻辑求反”,对应的函数分别为AND函数、OR函数、NOT函数。
逻辑值经常和IF函数配合使用,作为IF函数的逻辑判断部分。如图所示,人事部门需要安排一次低岗员工的晋岗考试,需要综合考虑工龄、当前岗级和上年度的考核状况来决定是否具有考试资格。具体要求如下:
第一,岗级数字必须大于6;
第二,工龄是10年以上(含10年)的老员工且考核不为“不称职”,或者考核为“优秀”的新员工。
需要在E列书写公式标注是否具备考试资格。
以E2单元格为例分解逻辑。判断1,岗级数字必须大于6:
=C2>6
判断2,老员工且考核不为“不称职”:
=AND(B2>=10,D2<>"不称职")
判断3,考核为“优秀”的新员工:
=AND(B2<10,D2="优秀")
判断2和判断3是新老员工的不同条件,只要符合其中之一就具备考试资格,因此判断2和判断3之间使用OR函数来处理。判断2或判断3满足后必须同时满足判断1,因此必须使用AND函数。综合以上逻辑,符合考试资格的条件可以用以下公式描述:
=AND(C2>6,OR(AND(B2>=10,D2<>"不称职"),AND(B2<10,D2="优秀")))
将上述逻辑和IF函数配合使用生成以下公式,复制E2单元格并向下填充完成员工是否具有考试资格的标记。
=IF(AND(C2>6,OR(AND(B2>=10,D2<>"不称职"),AND(B2<10,D2="优秀"))),"有","无")
把逻辑值转换成数值后,两个逻辑值的与等效于它们相乘、两个逻辑值的或等效于它们相加,逻辑值的非运算等效于“1-逻辑值”。由此逻辑函数表达的逻辑关系也可以转换成一个数值运算的关系式。
因此上式可以转换成以下结果:
=IF((C2>6)*((B2>=10)*(D2<>"不称职")+(B2<10)*(D2="优秀")),"有","无")
需要保留本文链接地址:http://www.excelxx.com/xuexixinde/12426.html