如图1所示,Excel表格做发学生考试成绩汇总表,需要根据AA列中相应科目的成绩排出名次,并将结果放到AB列相应的单元格中。 排定名次要使用RANK函数,其语法是“RANK(number,ref,order)”其中,参数“number”是需要找到排位的数字;而参数“ref”则是数字列表的引用;第三个参数如果省略则是按降序排列,这正是我们需要的。比如公式“=RANK(A3,A2:A6)”的意思就是要得到A3单元格数据在A2:A6单元格数据中的排名。 显然,在本例中要使用RANK函数,但有一个问题是必须要解决的。假设我们要针对语文学科的总分来排名次。学生们的语文总成绩分布在AA4、AA12、AA20……等单元格中,所处单元格区域并不连续,每8行有一个成绩。怎样才能将它们选中,并作为排名的区域呢? 这个问题也曾经困扰了我很长时间,最后发现利用求余数函数可以使问题得到顺利解决。不过,有些准备工作是要做的。 还是以语文成绩的排名为例。 先将AA列的数据复制到别的位置,等准备工作完成后再粘贴回来。 先选中AA4单元格,输入公式“=1/(MOD(ROW(),8)-4)”,回车后即可发现出现“#DIV/0!”的错误提示。拖动该单元格填充句柄向下至AA379,则会从AA4单元格开始,每8行出现相同的错误提示,其它各行均为数字。 点击功能区“开始”选项卡“编辑”功能组“查找和选择”按钮,在弹出的菜单中点击“定位条件”命令,打开“定位条件”对话框。选中“公式”单选项,并只保留选中随后出现的“错误”复选项,如图2所示。确定后就可以发现,凡是出现错误的提示的单元格就处于被选中状态了。 |