excel里面有没有可以根据考试成绩分数,直接排名次,并生成相应的名次的公式?

来源:百度知道 编辑:UC知道 时间:2024/06/12 01:34:13
关键是自动生成相应名次!

可以先按成绩排名,并自动填充名次,然后再按座次重新排序就可以了。
当然量大可以用RANK函数
找到名次列,假设是D列,总成绩是C列(先前你就是按照总成绩进行的排序)。找到第二行的学生(如果没有并列第一的话,它的名次应该是2,假设这个单元格是D3),把这个D3单元格里的2清空改成公式:=IF(C3=C2,D2,D2+1),用文字描述一下就是,如果这个学生的总成绩和上一个学生的总成绩相同,就取上一个学生的名次,如果不同就用上一个学生的名次加1。
下用复制这个D3单元格的公式就行了(注明第一行第一名的那个,就是D2单元格,不要用这个公式覆盖掉。),我做过试验一定可以成功的。
最后还要做一些扫尾工作。为了怕你改变学生的顺序导致名次混乱,这时你要紧接着把名次这一栏,用复制,选择性粘贴,选数值,把名次这一栏替换掉,这样无论你是按学号排序,还是按班级排序都不会把刚才排好的名次破坏。

经过我仔细测试了一边找到了个好的办法,可以不要把它们重新排成一行。
公式改为:=RANK(H4,($H$4:$H$35,$Q$4:$Q$33),0)
然后全部复制这个公式就行了。
RANK函数,它的语法为:

RANK(number,ref,order)

其中number为需要找到排位的数字。

Ref为包含一组数字的数组或引用。Ref 中的非数值型参数将被忽略。

Order为一数字,指明排位的方式。

·如果 order 为 0 或省略,Microsoft Excel 将 ref 当作按降序排列的数据清单进行排位。

·如果 order 不为零,Microsoft Excel 将 ref 当作按升序排列的数据清单进行排位。

最后,单击L1单元格,然后在“工具”菜单中选“排序”->“升序”,即可按照名次顺序显示各学生成绩。

我要提醒一下,用RAN中这个公式时,同样的分数会排同样的名次,但会缺少了一个名次号,如第8名有两个,第九名就不会出现了.