在上图所示的学生成绩单中,希望在不改变原有学号排列的情况下,按总分在名次列中标出每个人的名次。类似的情况还有许多。这时可使用RANK()函数实现。RANK()函数用来返回指定数字在一列数字中的排位。 RANK()函数的格式为:RANK(number, ref, order), 其中number为待排序的数字;ref为一列数字;order用于指定排位的方式,如果为0或忽略,降序;非零值,升序。下面使用RANK()函数实现自动排序。其步骤为:(1)在上图所示K2单元格中输入“=RANK(J2,$J$2:$J$16)”;这里使用绝对引用$J$2:$J$16.(2) 先把光标移到K2单元格的右下角, 当光标变为黑色的“+”号时,双击左键即可复制公式至K16单元格中。
方法/步骤
平常生活中,我们想将一列数字排序,大家最易想到的是用排序按钮,然后下一列用自动填充功能填充,但是当遇到两个数据相同的时候,这样填充出来的数据就不能很好的显示排名情况。如下图所示,两个105相同的分数,但是自动填充显示的名次却不一样。我们还得对这些相同分数的排名进行手动修改。
如何让excel帮助我们,不用排序快捷键,而且能去除重名次呢。首先我们不用将数据排序,回到最初数据形式。
下面我们需要运用rank函数。在b2单元格中输入以下内容:=rank(a2,$a$2:$a$24)。其中a2是需要确定位次的数据,$a$2:$a$24表示数据范围,括号里的内容即表示a2单元格数据在a2:a24这个数据区域的排名情况,公式计算结果将被显示在b2单元格里。为公式,下图2为计算结果的显示。
然后选中b2单元格,将鼠标放在右下角,鼠标变成小十字的时候,按下鼠标左键不放,往下拉到b24单元格,这样所有分数的排名就显示出来了。