先来看问题,要根据A1单元格中的业绩给出对应的等级,划分规则是:
<60,等级为“F”。
60~69,等级为“E”。
70~79,等级为“D”。
80~89,等级为“C”。
90~99,等级为“B”。
>=100,等级为“A”。
下面简单汇总一下常用的解决方法和思路。
1、IF函数
=IF(A1>=100,"A",IF(A1>=90,"B",IF(A1>=80,"C",IF(A1>=70,"D",IF(A1>=60,"E","F")))))
通过IF函数嵌套,像剥洋葱一样逐层判断A1数值所在的区间,并返回对应的结果。
大于等于100,返回“A”,大于等于90,返回“B”,大于等于80,返回“C”……
这个公式的优点是易于理解,缺点是如果有多个判断条件,公式会变得越来越长了。
还有一个问题,使用IF函数进行多个区间的判断时,小伙伴们可以记住一个窍门,就是可以从最高的规则部分开始,逐级向下判断。也可以从最低的规则部分开始,逐级向上判断。刚刚这个公式,就可以写成:
=IF(A1<60,"F",IF(A1<70,"E",IF(A1<80,"D",IF(A1<90,"C",IF(A1<100,"B","A")))))
2、LOOKUP
=LOOKUP(A1,{0,60,70,80,90,100},{"F","E","D","C","B","A"})
这种写法是多区间判断并返回对应值的模式化公式,是IF函数逐层判断的升级版。
注意,LOOKUP第二参数要升序处理{0,60,70,80,90,100}。
LOOKUP函数以A1为查找值,返回第二参数中小于等于A1的最大数值,也就是要找所有弟弟中的大弟弟,并第三参数{"F","E","D","C","B","A"}中对应位置的字符串。
3、MATCH函数
=MID("FEDCBA",MATCH(A1,{0,60,70,80,90,100}),1)
MATCH函数的作用是查询某个内容在一行或一列中的位置。
本例中MATCH函数使用A1单元格的内容作为查询值,在第二参数{0,60,70,80,90,100}中用近似匹配的方式查找A1所处的位置,返回的结果用作MID函数的第二参数。
MID 函数在文本字符串"FEDCBA"中截取字符串,截取的指定开始位置,就是由MATCH函数计算出的结果,截取的字符串长度为1。
暂无数据