同一类别项目的中式排名
上一次推文我们讲解了同一类别项目的美式排名,今天再来看一下同一类别项目的中式排名,中式排名的概念在此也不多说,如果不清楚这个概念,要先弄明白再看接下来的案例。如下图,是两个班级的几个学生的成绩,现在想要给他们做一份中式排名,注意是每个班级内部排名噢,而不是所有班级放在一起排。
当然可以一个班级一个班级来分别排,但是如果班级很多的话,恐怕就没有那么方便了,所以这里需要一种一次性处理的方法,与美式排名相比,中式排名的公式看起来要长一些,因为中式排名涉及一个去重复的过程,但是也是很简单的,在这里小编建议先看看下面这个去重复的案例理解下原理。
点击查看:【两个公式统计不重复人数】
然后再看以下提供的三种方法:
方法1:在D2单元格里输入如下公式:
=SUM((OFFSET($C$1,MATCH(A2,$A$2:$A$8,0),,COUNTIF($A$2:$A$8,A2))>=C2)/COUNTIF(OFFSET($C$1,MATCH(A2,$A$2:$A$8,0),,COUNTIF($A$2:$A$8,A2)),OFFSET($C$1,MATCH(A2,$A$2:$A$8,0),,COUNTIF($A$2:$A$8,A2))))
这个公式需要三键(Ctrl+Shift+Enter)结束,然后下拉填充至D8,得到如下结果:
在理解这个公式的时候,把OFFSET($C$1,MATCH(A2,$A$2:$A$8,0),,COUNTIF($A$2:$A$8,A2))看成一个整体会非常容易理解整个公式的含义,在此不详述。
方法2:
在D2单元格里输入如下公式:
SUMPRODUCT((OFFSET($C$1,MATCH(A2,$A$2:$A$8,0),,COUNTIF($A$2:$A$8,A2))>=C2)/COUNTIF(OFFSET($C$1,MATCH(A2,$A$2:$A$8,0),,COUNTIF($A$2:$A$8,A2)),OFFSET($C$1,MATCH(A2,$A$2:$A$8,0),,COUNTIF($A$2:$A$8,A2))))
由于SUMPRODUCT函数自身可以消化数组,这个公式不需要三键结束,直接下拉填充至D8即可,得到如下结果:
这个公式其实和方法一的公式基本是一样的,只是函数不一样而已。
方法3:
在D2单元格里输入如下公式:
SUM((FREQUENCY(OFFSET($C$1,MATCH(A2,$A$2:$A$8,0),,COUNTIF($A$2:$A$8,A2)),IF(OFFSET($C$1,MATCH(A2,$A$2:$A$8,0),,COUNTIF($A$2:$A$8,A2))>=C2,OFFSET($C$1,MATCH(A2,$A$2:$A$8,0),,COUNTIF($A$2:$A$8,A2))))>0)*1)
这个公式需要三键(Ctrl+Shift+Enter)结束,然后下拉填充至D8,得到如下结果:
这个公式利用FREQUENCY函数的特性来完成,你可以顺带复习一下FREQUENCY函数的用法~
点击查看:【FREQUENCY函数的用法详解】
这个案例需要注意的是A列中每个班级的编号要连续地在一起才可以运用上面的方法,若不连续则不能进行中式排名了!