判断函数???
阿尤啃盯蜜?????
判断函数,无外乎就是IF、IFS、AND、OR等等,AI已经列明了。
是的AI说的这些都是常规的判断函数,这些判断函数会使整个公式变又臭又长,不仅能讲公式中的各个逻辑关系说明白,还能将使用者看得眼花缭乱。
同学们说这些函数都掌握了,有什么好分享的,这次是水贴!妥妥的水贴!!
非也,这次要分享的判断函数刚好又是在工作场景中遇到的。
工作中原公式如下
="同比排名较去年"&IFS(AF30AF56,"下降"&ABS(AF30-AF56)&"位") 呈现效果
=IFS(AG30AG6,"高"&TEXT(ABS(AG30-AG6),"0.00")&"%") 呈现效果
=",单月"&IFS(VLOOKUP(AE30,四川物流总收入!$C$5:$AJ$16,30,FALSE)>0,"超省内序时进度",VLOOKUP(AE30,四川物流总收入!$C$5:$AJ$16,30,FALSE)<0,"差省内序时进度")
呈现效果
然后就一直在思考,如何将公式优化得更简短,虽然IFS已经足够优化了,但依旧不够满意,最后选中了最优判断函数TEXT。
TEXT这是什么函数?
AI告诉我们,这是一个文本函数!
文本函数怎样变成了判断函数??
先不说怎样变成了判断函数,先看看以下几个示例,看完以后都不需要介绍就明白了。
示例一
图中的环比差异应怎么计算?
大家肯定会各显神通,有用新函数的有用判断函数的,这里我使用TEXT函数。
=TEXT(D3:D10-C3:C10,"高0;低0;无变化")
示例二
从身份证中提取出生年月日
这是个经典的老问题,社区中有很多人会不断的提问,各位大神各显神通,同时WPS中也有各种方法
这里就用常规方法也是对数字进行判断
=TEXT(MID(F3:F10,7,8),"0-00-00")*1
示例三
如何快速将出生年月转换为月份并用中文月份
条件格式?那还不如用TEXT函数方便:
=TEXT(G3#,"[DBnum1]m月")
示例四
根据休息起始时间,计算休息时长,不足一小时的记为零。
时间相减?
=TEXT(J3:J10-I3:I10,"[h]")
示例五
根据休息时间判断休息质量,休息11小时以上的为优秀,11小时以下10小时以上的良好,10小时以下的及格。
这里常规使用IFS判断没问题,但示例中肯定会使用TEXT函数判断。
=TEXT(K3#,"[>11]优秀;[>10]良好;及格")
回到开头
="同比排名较去年"&IFS(AF30AF56,"下降"&ABS(AF30-AF56)&"位") 优化为
="同比排名较去年"&TEXT(AF56-AF30,"上升0位;下降0位;无变化")
效果不变,字符数减少
=IFS(AG30AG6,"高"&TEXT(ABS(AG30-AG6),"0.00")&"%") 优化为
=TEXT((AG30-AG6)/100,"高0.00%;低0.00%;无变化")
效果不变,字符数减少
=",单月"&IFS(VLOOKUP(AE30,四川物流总收入!$C$5:$AJ$16,30,FALSE)>0,"超省内序时进度",VLOOKUP(AE30,四川物流总收入!$C$5:$AJ$16,30,FALSE)<0,"差省内序时进度")
优化为
=",单月"&TEXT(VLOOKUP(AE30,四川物流总收入!$C$5:$AJ$16,30,FALSE),"超;差")&"省内序时进度"
效果不变,字符数减少
惯例,文尾附上示例文档,由于是旧函数,金山文档能非常完美的支持