逻辑值作为一种常见的数据类型,主要用于条件判断中,如If函数、Sumif函数等。但其实它还有很多别的用处,例如可以将逻辑值转换为数值,应用转换后对应的数值,可以实现意想不到的功能。

在进行算术运算时,可以将逻辑值自动转换为数值,它的对应关系是:True相当于1,False相当于0。例如5*True的值是5,5*False的值是0。
在进行逻辑判断时,0相当于Flase,其他非0数值都相当于True。例如公式=if(-5,"正确","错误")的值是“正确”,公式=if(0,"正确","错误")的值是“错误”。
掌握了逻辑值与数值的对应关系,同们学再一起来看两个巧妙应用的案例。
案例场景一
要求根据性别计算出“退休年龄”,男为60岁,女为55岁。
对于这个问题,相信同学们首先想到的肯定是用if函数,逻辑很简单也确实好用,但if函数也有if函数的短板,比如运算的效率比算术运算会低很多。其实可以不用if函数,利用Excel逻辑值自动转换为数值,就可以实现只用算术运算来解决问题。
具体的操作步骤是:
1、选定E2单元格,录入公式“=(C2="男")*5+55”;
公式释义:首先判断C2单元格中的文本是否为“男”,返回逻辑值。然后通过乘以5将逻辑值转换为数值1或0,若是“男”则相乘后为5,若是“女”则相乘后为0,最后与55相加即可得到“退休年龄”。
2、向下填充出其他人的“退休年龄”。
案例场景二
要求统计各部门人数。
常规的思路,解决这个问题也是需要用到条件判断,并且是多条件判断,如果用if的话,那就需要嵌套,用Ifs函数,公式也委实不短。在得出判断的结果后,还要用Sum等函数进行统计,确实有点麻烦。
将逻辑值转换为数值,然后借助Sumproduct函数进行统计,比常规解决方法更加高效好用。
具体的操作步骤是:
1、选定N2单元格,录入公式:=SUMPRODUCT(--((D2:D89)=M2));
公式释义:首先用需要统计的部门数据与D列部门数据进行比较,得到一个逻辑值,用“--”将逻辑值转换为对应的数值,若是当前需要统计的部门则为1,不是当前需要统计的部门则为0,生成一个数值,最后用SUMPRODUCT函数求和统计,即可得到当前部门的人数。
2、向下填充出其他部门的人数。
通过以上两个案例,我们发现巧妙利用逻辑值转换为数值,可以更好的解决一些原本需要用到条件判断函数的问题。案例只为抛砖引玉,关键在于理解,以便在实际应用中举一反三。建议一时理解比较吃力的同学,可以多揣磨揣磨,好好体会一下。