Excel:你会制作星级评定吗?
来源:网络收集 点击: 时间:2024-03-12小于60分,没有星;
大于等于60分小于70分,一颗星;
大于等于70分小于80分,两颗星;
大于等于80分小于90分,三颗星;
大于等于90分小于100分,四颗星;
100分五颗星。
看到这个规则,是不是似曾相识呢?是不是想着用函数IF来嵌套呢?

输入公式:
=IFERROR(REPT(★,INT(B2/10-5)),)

B2/10-5部分计算出星级个数

用函数INT取整(舍掉尾数取整,而不是四舍五入取整)

函数REPT:按指定次数重复文本。
REPT(需要重复的文本,指定文本重复次数的正数)
用函数REPT重复★的个数,得到的就是学生分数的星级

在计算星级个数时,星空的星级个数是-1,因为他的分数小于60分,是没有星级的,在用函数REPT重复★时返回错误值#VALUE!,用函数IFERROR容错,将错误值显示为空。

如果是用实星★和空星☆一起来评定星级呢,就是说没有五颗实星的按空星补全五颗星,又该如何做呢?

输入公式:
=REPT(★,C2)REPT(☆,5-LEN(REPT(★,C2)))
LEN(REPT(★,C2))来判断★的个数,用5减去该个数就是要补全的☆个数。

看下图这种情况,实星个数没有用函数INT取整是有小数出现的,现在就是要将小数部分按四舍五入为整用☆显示。

比如雨夜的实星个数是2.1,因为小数0.1四舍五入舍弃了,所以只示两个★
比如小小鸟的实星个数是4.5,小数0.5四舍五入为整,所以显示四个★1个☆

输入公式:
=IFERROR(REPT(★,INT(C2)),)REPT(☆,ROUND(C2-INT(C2),0))
IFERROR(REPT(★,INT(C2)),)部分用函数INT取整显示★
REPT(☆,ROUND(C2-INT(C2),0))这部分中C2-INT(C2)用来算出小数,用函数ROUND将小数四舍五入为整数显示☆
显示实星与空星这两部分用连接。

个人建议
最终效果如图所示。

版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.ff371.cn/art_324854.html