Excel表格数据怎么使用rank语句灵活排名次?
脚本之家
使用excel排名次,一般会碰到这几种情况。第一种是横向排名次,第二种是纵向排名次,第三种是反向排名次(由小到大),第四种是有多列(行)需要排名次。有的朋友们学会了rank排名后,不会变通,如果有多列(行)排名次的话,每一列(行)都需要打上rank公式。比如学生成绩:语文要排名,数学也要排名,还有其他学科。
若经验不足,可能每个学科都要键入一个rank公式。在该篇文章中,我们将学习如何稍稍修改rank语句,达到“只要输入一个函数,就可多行(列)进行排名”的目的。
一、纵向排序
1、如果数据是纵向的,我们可以选中名次所在列第一格(如图中为c2),键入公式"=rank(b2,$b$2:$b$6)" ,然后回车。公式中的"b"指的是排名次数据(得分1)所在列,“b2”指c2格对应的b2格数据的名次,“$b$2:$b$6”是指数据范围从b2到b6."$"的做用是指锁定后面的字符。
当然,我们也可以把代码写成代码2的样式"=rank(b2,b$2:b$6)"和上面的区别在于,该代码只锁定了“2”和"6",没有锁定列"b".这是我们一个公式多行(列)排序的关键,以下的讲解中我们采用第二种代码方式。
2、第一个格排次显示出来之后,我们可以通过复制、拖动、右下角双击等各种方式,使该公式填充c2到c6格,这样名次也就自动出来了。
3、现在重点来了。我们“得分2”排名,仅需要进行如下操作:复制“名次1”列的名次,然后选中“得分2”得分区域,点右键,选‘粘贴’(注意,不要选成‘选择性粘贴’)
4、名次已排好。如果在步骤1中你选用的是第一种公式,那这一步将出错。因为第一种方法锁定了“B”列,复制过来之后依然将b2到b6作为排名区域。而第二种方式没有锁定“B”列,因此复制过来公式自动把“B”改成了“D”,正好是“得分2”的范围
二、横向排序
1、如果数据是横向的,也可进行排序。如图为第一种代码方式。
2、不过如果有多行排序的话,还是要使用第二种代码方式
三、倒序排名次
1、如果是倒序排名次,仅需要在上述公式中加一个“,-1”即可。如图
2、上述所有公式都可以通过增加“,-1”来实现倒序排名次。其他操作均完全相同
相关推荐: