用Excel确定比赛名次
数字办公
编者按:在举行运动会时,往往要求在较短的时间内计算出个人名次、团体名次等统计资料,如果手工计算,费时费力且容易出错。本期,我们通过一个典型的实例来教大家如何利用Excel的内置函数帮我们自动计算名次。
集团公司举行消防运动会,运动会共设五个比赛项目,下属10个子公司分别组队参加。要求对每一单项进行排名,颁发单项奖励。同时,根据每一单项所得名次换算成相应的得分值,所有项目比赛完后,每一子公司在各单项比赛中根据所得名次换算得来的得分值之和为该公司的最后得分,最后进行综合名次的排列,颁发团体奖励。根据组委会的要求,我用Excel的函数设计了此次比赛的成绩统计表,经实践检验非常好用,而且设计也比较简单,不涉及任何编程知识。
一、设计表格
第一步:根据要求新建一工作表命名Cover,根据组委会的要求,把各单项比赛的名次与分值录入,作为名次与分值换算数据区域,如图1。

建立这样一个名字与分值换算数据区域的目的是:单项成绩单根据名次值,在该数据区域进行查找,定位名次后,将该名次对应的分值回写到单项成绩单的“得分”栏中。
第二步:为每一单项新建工作表,根据每一单项的要求制作出单项成绩单。
这里以“4×50米干粉灭火器接力赛”为例来说明单项成绩单的样式,以及如何根据比赛成绩来快速排列名字,再根据名字换算出应得分值。
图2是“4×50米干粉灭火器接力赛”的成绩记录、名次确定、分值换算表。

在图2中,各单位的名次全部是第1名,得分也全部是30分,这是因为,现在还没有比赛成绩,或者说全部的比赛成绩现在都一样,全部是0,所以全部并列为第1名。当我们根据实际比赛结果,填入比赛成绩后,名次及得分就会相应的改变。下面让我们来看看,名次和得分是如何根据比赛成绩的改变而改变的。
要实现名次及得分随比赛成绩而动,先还得做一个准备工作,在Cover工作表中,建立“根据比赛成绩排名”数据区域,如图3所示。

这一数据区域的用途是,把每一单位各单项比赛的成绩以及综合成绩进行升序排列,并把对应名次的成绩填入相应的表格中(不用担心,这些数据的填入全由函数来完成,不由我们手工去填写,我所要做的是在相应的单元格中设置好函数公式就可以了),然后,各单项成绩统计表,根据成绩值,在“根据比赛成绩排名”数据区域中进行查找,定位该成绩值在“根据比赛成绩排名”数据区域中的位置,确定出该成绩的相应名次,再回写到单项成绩统计表中的名次栏中,实现由成绩到名次的转换。
第三步:新建工作表(图4),命名为“汇总”,用于求各单项比赛分值之,同时根据总得分,确定每一单位的最终名次排列。

二、加入公式
下面让我们来看看名次是如何取得的。
首先,在“根据比赛成绩排名”数据区域的“C16”单元格中输入公式“=SMALL(‘4×50米干粉灭火器接力赛’!$D$4:$D$10,A16)”,这个公式的作用是在“4×50米干粉灭火器接力赛”各队成绩中(即4×50米干粉灭火器接力赛工作表的d4:d10区域),找到值最小的(即第一名的成绩),填入“C16”。然后,把该公式进行向下填充,依次找到各名次的成绩,并填入。实现成绩的升序排列。
然后,在单项成绩统计表的“E4”单位格中输入公式“=MATCH(D4,Cover!$C$16:$C$22,0)”,实现查找单位“甲”的比赛成绩在“根据比赛成绩排名”数据区域中的相对位置,然后取出该值,回填到名次单元格中。把该公式向下填充,依次确定各单位的名次(图5)。

经过比赛成绩到名次的转换后,紧接着就要实现名次到得分的转换。
在“单项成绩统计表”的“F4”单元格中输入公式“=VLOOKUP(E4,Cover!$A$2:$C$8,3)”,实现在名次与分值换算区域中垂直查找单位“甲”的名次在该区域中的位置,然后取出该值,回填到“单项成绩统计表”的“F4”单元格中,完成单位“甲”的名次与分值的换算,将该公式向下填充,依次换算出各单位的分值。
各单项成绩统计表做好后,就要做最终成绩汇总表了,最终成绩汇总表很简单,就是将各单项成绩求和,求和方法很简单,这里不再赘述,分值与名次的换算与前面单项成绩统计分会值与名次的换算相同。