EXCEL中怎么根据出现名字的频次自动计算个人合格率。

要求:1.名字出现一次合格率为98%,出现两次为97%,出现三次为96%,出现四次为95%,出现五次为94%。2.名字是随机出现的,(即不是固定的名字)。怎么让上图中的C,D列数据自动生成。

C1:
=INDEX(A:A,SMALL(IF(MATCH($A$1:$A$1000&"",$A$1:$A$1000&"",0)=ROW($A$1:$A$1000),ROW($A$1:$A$1000),4^8),ROW(1:1)))&"",数组公式,即同时按Shift+Ctrl+Enter结束公式编辑,会自动生成一对{},下拉。
D1:
=IF(C1="","",TEXT(0.99-COUNTIF(A:A,A1)*0.01,"0%"))追问

请问大侠:1.怎么把C,D列的空行去掉,2.有的数据统计好像有点问题,如上面红色的名字,只出现一次,应该是99%,怎么变成96%了呢,请赐教。

追答

有空行,公式改为:
C1:
=INDEX(A:A,SMALL(IF(MATCH($A$1:$A$1000&"",$A$1:$A$1000&"",0)=ROW($A$1:$A$1000),IF($A$1:$A$1000"",ROW($A$1:$A$1000),4^8),4^8),ROW(1:1)))&""
D1:
=IF(C1="","",TEXT(0.99-COUNTIF(A:A,C1)*0.01,"0%")),原来公式中把C1误成A1了。
不过上面说的是出现一次为98%,如果是99%的话,把公式中的0.99换成1。

温馨提示:答案为网友推荐,仅供参考