Microsoft.Office.Excel中的函数之统计函数RANK 2019年7月3日 星期三2019年7月3日 星期三 马上进入期末,考试排名是必不可少的了。虽然说得分不能说明一切,但是一个较好的得分,更前的排名,往往要比低分靠后要好的多。而在Excel中也有对应的函数RANK来进行相应的排序操作。 一、函数定义RANK函数,它是一个统计函数。目前仅保留为兼容函数,新的函数为RANK.AVG、RANK.EQ,但目前RANK函数依然是适用的,兼容Excel2007及后续的版本,后期再介绍2个新函数。RANK函数的用法是返回一列数字的数字排位,数字的排位是其相对于列表中其他值的大小。 语法RANK(number,ref,[order])RANK 函数语法具有下列参数:Number 必需。 要找到其排位的数字。Ref 必需。 数字列表的数组,对数字列表的引用。 Ref 中的非数字值会被忽略。Order 可选。 一个指定数字排位方式的数字。如果 order 为 0(零)或省略,Microsoft Excel 对数字的排位是基于 ref 为按照降序排列的列表。如果 order 不为零,Microsoft Excel 对数字的排位是基于 ref 为按照升序排列的列表。RANK函数将重复的数是当成同样的排位的,且重复的数字会占据相应的排位。例如:在按大小排序的整数列表中,如果数字5出现两次,当排位为5,则6的排位为7(即会没有排位为 6 的数值)。 二、实践应用下面以一个简单的排序来说明一下实际的应用。某次考试中10个同学的得分后,需要对同学的成绩进行排名。表格中有10个同学,每个同学的成绩是不一样的,使用RANK函数,在D2格输入公式:=RANK(C2,$C$2:$C$11,0) 或者=RANK(C2,$C$2:$C$11,)前面提到order 参数为 0(零)或省略,是按降序排列的,所以这里可以输入为0或者直接省略。然后再把公式下拉,得到了10个同学的排名。 图1.Excel对成绩按降序排列 再使用升序排序的话,输入的公式为=RANK(C2,$C$2:$C$11,1)得到10个同学的排名。 图2.Excel对成绩按升序排列 可以看到,当2个同学的成绩都是61分的时候,是并列为第1,但是没有了第二名,而是63分为第三名了。同样,RANK函数中Ref参数同样支持多个区域,可以对多区域进行排序。如图所示: 图3.RANK支持对多区域排序 在这里,计算的公式如下: =RANK(C2,($C$2:$C$11,$H$2:$H$11),0) =RANK(C2,($C$2:$C$11,$H$2:$H$11),1)即设定了Ref为($C$2:$C$11,$H$2:$H$11),即2个区域来排序。函数相对而言是毕竟容易理解的,多实践几次,相信会有收获。