Excel的排序功能应用在成绩排名|Youtube官网(@电脑教室)频道



哈啰,大家好
说到成绩排名
有些人也许会联想到 Excel 的排序功能
譬如今天我想要了解班上同学的名次高低
那么我可以将滑鼠游标
置于「成绩」栏之后
按下「从最大到最小排序」的按钮
只是这个操作会将整个表格重新洗牌
导致原本依照「学号」排列的成绩单
整个被打乱了
因此,今天我打算介绍一个很实用的函数
RANK.EQ
利用它来协助我们
找出所有同学的成绩排名
RANK 在字面上是「等级」的意思
而 EQ 则是 Equal 的缩写
本身是「相等」的意思
若要了解 RANK.EQ 的用法
我们不妨来试着分析这个句子
「小明这次考试在全班排名第三」
这个句子中包含了一个比较的主体
也就是小明本人
以及一个比较的范围对象
在这里是指的是「全班同学」
因此对于 RANK.EQ 来说
「主体」和「对象」
是这个函数最重要的部份
我们必须告诉 Excel
我们是要拿「小明」的成绩
跟「全班」比较?

还是跟「全校」比较?

或着,今天我要比较的主角也许不是「小明」
而是其它的同学
有了这些资讯
RANK.EQ 才能帮我们查询出正确的结果
RANK.EQ 的函数结构
就如同刚才的说明
它包含了「主体」和「范围」这两个引数
当我们要实际操作时
我们首先将选取框
放到第一位同学的排名栏
接着输入函数的名称
此时,你会发现在 RANK.EQ 函数之下
还有一个名为 RANK 的函数
两者的差别在于 RANK.EQ
是在 Excel 2010 之后所推出的改良版
而 RANK 则是相容于旧版的 Excel
虽然两个函数的使用方式完全相同
但是微软官方的建议
是请大家使用新版的 RANK.EQ
因为旧版的 RANK
有可能会在未来的软体更新中被移除掉
OK,输入好函数名称之后
我使用滑鼠点击第一位同学的考试分数
来做为成绩比较的「主体」
接着我输入一个逗号
再框选全班同学的成绩
来当作比较的范围
然后按下 Enter 键
就可以求出第一位同学的名次
不过,这时如果我将这个公式
向下复制到其它同学的名次栏
你会发现跑出一个古怪的现象
就是这些同学的成绩明明分数不同
但是却有三个人并列第一
另外也有三个人并列第二
而这个错误是因为我们在复制公式时
函数的参照位置发生了偏移
简单来说
就是当公式从第一位同学复制到第二位时
不光是函数的比较主体
向下顺移了一格
而是连同成绩的比较范围
也跟着跑掉了
因此,当公式复制到最后一列时
这位同学实际上是拿自己的成绩
跟一群不存在的人比较
那么理所当然他就获得了第一名
而要修正这个问题
我们可以运用之前影片介绍过的
「绝对参照」的观念
也就是把用来比较的全班成绩
「锁」在原地不动
而设定的方式
是将全班的成绩范围反白之后
按下键盘的 F4
接着再将这个公式同样向下复制
就可以求出正确的成绩排名啰
至于考试成绩如果有同分的情形
RANK.EQ 的处理方式
是将这两位同学并列为同一个名次
而在他们后面的同学
会直接略过重复的排名
也就是跳过第七
直接显示为第八名
Excel 针对重复排名还提供了另一个解决方案
它本身也是一个函数
叫做 RANK.AVG (Average 平均)
它的函数结构与 RANK.EQ 完全相同
但是当遇到相同的名次时
RANK.AVG 会采用平均值的方式
来做为排名
以目前的例子来说
这两位同学一同占据了
第六和第七这两个名次
而六和七取平均数的结果就是 6.5 啰
OK,最后我们来练习利用今天学到的函数
来求出右侧的跑步测验排名
我同样将选取框
放置到第一位同学的排名栏
输入 RANK.EQ 的函数名称
接着点击第一位同学的跑步成绩
输入一个逗号
再框选全班同学的测验结果
同时按下键盘的 F4 来锁定这个范围
最后再将这个公式
复制到其它同学的栏位
不过,这里却出现了一个问题
就是在跑步测验中
名次最高的应该是跑得最快
也就是花费时间最少的同学
但是这里的排名结果却是完全颠倒
变成跑得最慢的同学获得了第一名
针对这个排序颠倒的问题
RANK.EQ 的解决方式
就是利用第三个引数「排序方式」
让我们决定是要套用「递增」
或是「递减」排序
在预设情形之下
如果我们没有输入第三个引数
或是输入一个 0 的话
则 RANK.EQ 会采取一般的递减排序
也就是成绩最高分的为第一名
次高分的为第二名
依此类推
而如果我们在输入逗号之后
键入一个 1 的话
那么 RANK.EQ 就会改采用
「递增」的方式来进行排名啰
OK,那今天的 Excel 介绍我们就聊到这里
我们同样下回再见,拜拜