你:“组内中国式排名有点复杂啊”。EXCEL:“我能坚持”。

你好,我是刘卓。欢迎来到我的公号,excel函数解析。今天来分享下组内中国式排名。先来说下中国式排名的规则,比如有4个人的分数分别是100,90,90,80,那么ta们的排名分别是第1名,第2名,第2名,第3名。

1.求各成员在各自小组内的中国式排名

下表A1:C21展示的是某公司部分员工参与一项活动的成绩表,其中共有20个人,分为3组,每个人的成绩在0到100分之间。现在的要求是在D列中计算每个人在各自小组内的中国式排名。比如“黄腾峰”在1组内的中式排名是第1名。

先来说下求中国式排名的大概思路,第一点先要对分数去重,第二点要计算去重后的分数中大于等于当前分数的个数。

还是以100,90,90,80这4个分数为例说明,第1步去掉重复的分数,得到100,90,80这3个分数。

第2步,100,90,80这3个分数中大于等于100的有1个,大于等于90的有2个,大于等于80的有3个,所以100是第1名,90是第2名,80是第3名。

明白了这个,就可以看我们的问题了。我们的问题更加复杂,多了个组内排名的条件。这里我先说公式吧,在D2单元格输入下面的公式,向下填充,完成。

=COUNT(0/FREQUENCY(ROW($1:$999),(A$2:A$21=A2)*(C$2:C$21-C2)))
这个公式相对来说,还是比较简洁的。但是理解起来会有一定的难度,需要对frequency的用法比较熟悉。
下面来解释一下这个公式:
A$2:A$21=A2这部分判断A2:A21的组别是否等于A2,如果相等返回true,否则返回false。结果为{TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}。
C$2:C$21-C2这部分是用C2:C21的分数减去C2,大于C2的返回正数,等于C2的返回0,小于C2的返回负数。结果为{0;-9;0;-45;-13;-25;0;8;-75;6;8;-90;0;-34;-54;0;-43;-54;-43;7}。
(A$2:A$21=A2)*(C$2:C$21-C2)这部分是上面2个数组的相乘,如果A2:A21的组别等于A2,相乘的结果返回C2:C21-C2,否则相乘的结果返回0。最后的结果为{0;-9;0;-45;-13;-25;0;0;0;0;0;0;0;0;0;0;0;0;0;0}。

这样的话,不是1组的都变为0,是1组的都变为对应的分数减去C2,如下图所示。我们要的是1组中大于等于0的那些数字,因为大于等于0的数字,对应的是大于等于C2的分数。

接下来需要对1组中大于等于0的数字去重,也就是相当于对1组中大于等于C2的分数去重,去重的话用的是frequency函数,也就是FREQUENCY(ROW($1:$999),(A$2:A$21=A2)*(C$2:C$21-C2))这部分。

frequency的第1参数选ROW($1:$999),这样只在第2参数的正数位置计数,负数和0的位置不计数,而且由于第1参数最大是999,会在最后一个位置计数,正好把少了0位置上的计数补回来。(如果对frequency不熟悉,这段会比较难理解)

最后用count(0/frequency())计数,就得到组内中式排名的结果。我自己都讲的很艰难,大家最好看公式自己研究。

下面分享另一个公式,这个公式可能会比较好理解一点。和不带条件的中式排名的用法很类似,公式就不再解释了,大家自己拆解。

=SUMPRODUCT((A$2:A$21=A2)*(C$2:C$21>=C2)/COUNTIFS(A$2:A$21,A$2:A$21,C$2:C$21,C$2:C$21))
如果你有office365的话,那就更简单了。公式如下:
=SUM(N(UNIQUE(FILTER(C$2:C$21,A$2:A$21=A2))>=C2))
链接:

https://pan.baidu.com/s/1TX6HdSoQSjaerQvKfDqkrA

提取码:2got
(0)

相关推荐

  • 实用系列之中国式排名的三种方法

    众所周知,在大家上学的时候,学生成绩如果遇到2个名次一样,比如有2个第1名,那第三个人就得排第三名,这就是传说中的中国式排名,但是excel本身的rank排名函数,只能计算出1 1 2这样的名次,就是 ...

  • Excel公式技巧88:使用FREQUENCY函数统计不同值、唯一值和连续值(上)

    excelperfect FREQUENCY函数是一个较难掌握的Excel工作表函数,这篇文章收集整理了一组运用FREQUENCY函数的公式,用来统计不同值.唯一值和连续值的数量,希望能够帮助有兴趣的 ...

  • 手把手教你,学会排名

    中国式排名 使用RANK类函数排名时,如果出现并列的情况,并列者将占用名次,因此会导致部分名次出现空缺.而按 照中国人习惯的排名计算方法,无论有几个并列第1名,之后的排名仍然是第2名,即并列排名不占用 ...

  • 利用EXCEL函数功能对学生成绩进行“中国式排名”(三)

    三.用MATCH=ROW的方法实现"中国式排名" 选中位次单元格L3:L122,输入函数公式"=SUMPRODUCT(($J$3:$J$122>=J3)*(MATC ...

  • 利用EXCEL函数功能对学生成绩进行“中国式排名”(二)

    二.用FREQUENCY + COUNT函数来实现. 在L3单元格内输入数组公式"=COUNT(1/FREQUENCY(--$J$3:$J$122,IF($J$3:$J$122>=J3 ...

  • 利用EXCEL函数功能对学生成绩进行“中国式排名”(一)

    利用EXCEL的排序和自动填充功能可以对学生成绩位次进行排名,不过这是美式的排名方法.中国的排名习惯一般是总分相同的排名一致,即无论排名第2的有几个,下一个也是排第3名.这里我用EXCEL的函数功能来 ...

  • 这是中国式排名最简单的做法!复杂函数请走开

    今天我们要讲的是中国式排名,其实这四个经典的问题,小编我自己还专门出过一起专题公式讲解! 具体:EXCEL经典公式解析-中式排名! 不明白的小伙伴可以看一下,可以说想要写出这个公式,起码函数水平也要中 ...

  • 贴墙摸膝,活络5组内关节

    贴墙摸膝,活络5组内关节 练习太极拳分为4个步骤 步骤1:把配件打磨合格. 人体有9组关节,其中内关节5组,分别是:颈肩背腰胯:外关节4组,分别是:膝足肘手.人体有3个体腔,分别是:胸廓.腹腔和盆底区 ...

  • 73、贴墙摸膝,活络5组内关节

    73、贴墙摸膝,活络5组内关节

  • countifs求组内美式排名

    前几天的文章说过排名的问题,不过都是在同一个区域中求排名.今天说一下组内求排名的问题,比如现在有2个小组,要分别求出每个成员在各自小组中的排名. -01- 具体应用 1.求小组内美式排名 如下图所示, ...

  • 中国式排名又一种方法(简单的思路,不简单的公式)

    昨天我们说过美国式排名和中国式排名,美国式排名比较简单,中国式排名有点复杂.今天来说中国式排名的另一种方法,思路是比较简单,但是公式写起来还是有点复杂的.不懂公式也没关系,我会教你用基础命令分步操作. ...

  • 班级小报第2期:篮球赛、组内赛课、滚动抽奖……

    用班级小报的形式,盘点过去一周班级的点点滴滴. 也算是对我自己工作的一次复盘. 篮球赛 上一周对于孩子们来说,最为激动的事情,就是五年级开始了年级篮球联赛,12个各班同台竞技. 这也是我们小学阶段最后 ...