奔牛网>office>Excel应用>>Excel透视表实现排名显示直接透视表中显示排名
2017年09月23日

Excel透视表实现排名显示直接透视表中显示排名

Excel中可以使用RANK函数进行排名(美式排名)。而有时候我们整个表格是使用透视表来生成,这个时候就需要使用到透视表自动进行排名显示的功能。

这里使用的是中国式排名,即在一组数据中,重复数排名相同。例如无论有几个并列第2名,之后的排名依然为第3名,并列排名不占用名次。

在Excel2007及以下版本,若要实现中国式排名需要结合countif、Product等函数,比较复杂。而在Excel2010及以上版本中,我们通过数据透视表即可轻松实现中国式排名。

【中国式排名与美式排名区别】

以下列数据源为例,需要对成绩进行排名,若采取美式排名,可直接在C2单元格中输入公式:=RANK(B2,$B$2:$B$17),公式复制后得到以下结果:

1.jpg

对排名进行排序后,会发现重复排名将占用名次,如下图所示:

2.jpg


【透视表实现中国式排名】

接下来我们用数据透视表快速实现中国式排名。注意:Office版本为2010或以上。

一 创建数据透视表

1光标置于数据源中任何一个位置,【插入】选项卡—“数据透视表”。

3.jpg

2选择放置数据透视表的位置,本例放置在D1单元格。

4.jpg

3在“数据透视表字段列表”中,将“姓名”字段拖动到行标签区域,两次将“成绩”字段拖动到“值”区域。

5.jpg

二 设置值显示方式

1光标选中“求和项:成绩2”字段列任何一个单元格,右键,选择“值的显示方式”——“降序排列”。

6.jpg

2基本字段选择“姓名”。

7.jpg

3确定后,即可得到中国式排名。对“求和项:成绩2”字段进行升序排列,可查看更清晰。

8.jpg


也可看这篇教程的动图操作https://www.bnxb.com/excel/26980.html

三 Excel2007版本使用公式实现

上述功能是Excel升级到2010版本之后得新增功能,那在2007版本中,就只能通过以下函数方式实现了。

在C2单元格中输入:=SUMPRODUCT(($B$2:$B$17>=B2)*(1/COUNTIF($B$2:$B$17,$B$2:$B$17)))

复制公式后也可实现中国式排名,大家在应用这个公式时注意数据范围的修改与选择。

sumproduct实现多条件排名可以参阅:https://www.bnxb.com/excel/27073.html

顶(0)
踩(0)
最新评论