使用Excel自动实现同分同名次排序[图文攻略]

在用Excel统计成绩时 , 我们一般会根据成绩高低进行排序 , 然后按序列自动填充出名次 。 这种方法得出的名次与总分没有关联 , 即使成绩相同 , 也会填充出不同的名次 。
如果数据较少 , 我们可以采用手动的方法将成绩相同的人员改成相同的名次 , 但数据较多时就很麻烦了 。 经过实践 , 以下三种方法可以自动实现同分同名次的操作 。 假设有1000名考生 , 字段位置如上图所示 。
一、使用排位函数RANK
在H2单元格中输入函数“=RANK(G2,G$2:G$1001,0)” , 回车后H2单元格中会出现名次“1” , 然后选定H2 , 拖动其填充柄向下填充即可自动实现 。
该函数的功能是返回一个数字(上述函数中的G2 , 此处采用相对应用 , 填充时随行的变化而变化)在数字列表(上述函数中的G$2:G$1001 , 此处采用绝对应用 , 填充时不发生变化)中的排位 。 数字的排位是其大小与列表中其他值的比值 。 该函数在使用时 , 即使总分没有排序 , 它也可以直接求出所对应总分的名次;如果总分已排过序 , 则数字的排位就是它当前的位置 。 上述函数中最后的“0”指明排位的方式 , 当其为 0或省略时 , Excel 对数字的排位是按照降序排列的 。 如果不为零 ,  Excel 对数字的排位则是按照升序排列的 。 该函数对重复数的排位相同 , 而下一名次则将前面的重复数计算在内 。 //本文转自www.45it.com电脑软硬件应用网
二、使用计数函数COUNTIF
在H2单元格中输入函数“=COUNTIF(G$2:G$1001,">"&G2)+1” , 然后向下自动填充即可实现该操作 。
该函数的功能是计算区域中满足给定条件的单元格个数 。 上述函数中采用绝对引用指定计算区域G$2:G$1001 , 名次所对应的单元格G2采用相对引用 。 即求出在G2:G1001区域中大于名次所对应总分的单元格的个数 , 然后加上1就可以得出该单元格中数值的名次 。 该操作不管有几个重复的 , 大于它的个数却是固定的 , 所以重复数据的名次也就是相同的了 。 同RANK函数一样 , 该函数不管是否已经按总分进行排序均可进行上述操作 。
三、采用IF语句加COUNT函数
该操作与上述两种方法不同 , 必须先将总分按照降序排列 。 然后将第一名的名次“1”输入 , 再在H3单元格中输入函数“=IF(G3=G2,H2,COUNT($G$2:G3))” , 确定后向下自动填充也可实现同分同名次的操作 。
COUNT函数的功能是返回指定区域中数字单元格的个数 。 因为G列全是数字单元格 , 所以该总分处在第几位上名次就是几 。 上述语句的意思就是如果当前总分和上一个总分相同 , 则输入上一个总分的名次 , 否则执行COUNT语句 , 统计个数 。
【使用Excel自动实现同分同名次排序[图文攻略]】 以上三种方法均可自动实现同分同名次操作 。 本文虽然有孔乙己先生关于“回”字有四种写法的嫌疑 , 但笔者的目的却只有一个 , 那就是抛砖引玉 , 让Excel函数更好的为我们服务 。

    推荐阅读