Excel怎么让中国式实现排序

2019-08-13 13:24发布

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
1条回答
青春.孤梦
2020-12-20 18:09




excel实现中国式排序,可分为以下几类情况:

第一类情况单条件排序:

1.如下图所示,要对每个人的得分进行排名次,可以按照以下的步骤。


2.在C2单元格输入公式=RANK(B2,$B$2:$B$8,0),然后用鼠标左键单击单元格格右下角的填充柄不放拖动到其它单元格区域。


3.其中Rank函数的语法如下所示

RANK(number,ref,[order])

第一个参数number表示要进行排名次的数值,这里是B2单元格的数值

第二个参数ref表示要进行比较的数值序列,这里是B2:B8单元格区域的数值

第三个参数order指明是进行降序排名还是升序排名,如果是0表示降序排名,如果是非0的任意数值表示升序排名。当然这个参数还可以省略,如果省略,表示是降序排名。

4.如果有相同的得分,用rank函数得出的排名是一样的,同时余下的排名将会跳过,如下图所示有2个90分,它们的名次都是第2名,89直接变成了第4名,没有第3名。在中国的习惯中,无论有几个并列第2名,之后的排名仍应该是第3名,即并列排名只占一名次的“中国式排名”。


5.如果要实现“中国式排名”,需要变换公式,在D2单元格输入以下公式

=SUMPRODUCT(($B$2:$B$8>=B2)*(MATCH($B$2:$B$8,$B$2:$B$8,0)=ROW($1:$7)))

然后用鼠标左键单击单元格格右下角的填充柄不放拖动到其它单元格区域。(用$B$2:$B$8>=B2判断$B$2:$B$8区域中大于等于B2的单元格值有几个,在这里有可能有重复的值,然后再通过MATCH($B$2:$B$8,$B$2:$B$8,0)=ROW($1:$7)公式把重复的值去重,只保留一个重复的值,这样计算它的排名时就不会重复计算了。



一周热门 更多>