Excel做成绩表时自动实现同分同名次

  在用Excel统计成绩时,我们一般会根据成绩高低进行排序,然后按序列自动填充出名次。这种方法得出的名次与总分没有关联,即使成绩相同,也会填充出不同的名次。


  如果数据较少,我们可以采用手动的方法将成绩相同的人员改成相同的名次,但数据较多时就很麻烦了。经过实践,以下三种方法可以自动实现同分同名次的操作。假设有1000名考生,字段位置如上图所示。

  一、使用排位函数RANK

  在H2单元格中输入函数“=RANK(G2,G$2:G$1001,0)”,回车后H2单元格中会出现名次“1”,然后选定H2,拖动其填充柄向下填充即可自动实现。

  该函数的功能是返回一个数字(上述函数中的G2,此处采用相对应用,填充时随行的变化而变化)在数字列表(上述函数中的G$2:G$1001,此处采用绝对应用,填充时不发生变化)中的排位。数字的排位是其大小与列表中其他值的比值。该函数在使用时,即使总分没有排序,它也可以直接求出所对应总分的名次;如果总分已排过序,则数字的排位就是它当前的位置。上述函数中最后的“0”指明排位的方式,当其为 0或省略时,Excel 对数字的排位是按照降序排列的。 如果不为零, Excel 对数字的排位则是按照升序排列的。该函数对重复数的排位相同,而下一名次则将前面的重复数计算在内。

  二、使用计数函数COUNTIF

  在H2单元格中输入函数“=COUNTIF(G$2:G$1001,">"&G2)+1”,然后向下自动填充即可实现该操作。

  该函数的功能是计算区域中满足给定条件的单元格个数。上述函数中采用绝对引用指定计算区域G$2:G$1001,名次所对应的单元格G2采用相对引用。即求出在G2:G1001区域中大于名次所对应总分的单元格的个数,然后加上1就可以得出该单元格中数值的名次。该操作不管有几个重复的,大于它的个数却是固定的,所以重复数据的名次也就是相同的了。同RANK函数一样,该函数不管是否已经按总分进行排序均可进行上述操作。

  三、采用IF语句加COUNT函数

  该操作与上述两种方法不同,必须先将总分按照降序排列。然后将第一名的名次“1”输入,再在H3单元格中输入函数“=IF(G3=G2,H2,COUNT($G$2:G3))”,确定后向下自动填充也可实现同分同名次的操作。

  COUNT函数的功能是返回指定区域中数字单元格的个数。因为G列全是数字单元格,所以该总分处在第几位上名次就是几。上述语句的意思就是如果当前总分和上一个总分相同,则输入上一个总分的名次,否则执行COUNT语句,统计个数。

  以上三种方法均可自动实现同分同名次操作。本文虽然有孔乙己先生关于“回”字有四种写法的嫌疑,但笔者的目的却只有一个,那就是抛砖引玉,让Excel函数更好的为我们服务。

时间: 2025-01-27 06:56:48

Excel做成绩表时自动实现同分同名次的相关文章

update-Update 数据表时自动求如何写SQL语句呢(使用SQL Sever)?(设计触发器或存储过程吧)

问题描述 Update 数据表时自动求如何写SQL语句呢(使用SQL Sever)?(设计触发器或存储过程吧) 我有一个学生考试信息表: 考号,姓名,语文成绩,数学成绩,英语成绩,文综成绩,总成绩 (PS:默认各科成绩,总成绩都为 0)在老师登分时只会登入各个科目的成绩,我使用的是SQL Sever数据库,当老师登入各科成绩时(使用Update),如何触发自动求和?_谢谢!_ 解决方案 create trigger trig_学生考试信息表 on 学生考试信息表 for insert as be

如何让Excel文档保存时自动创建备份文档

症状:保存退出Excel时会同时出现一份.xlk格式的excel备份文档. 原因:设定了自动备份. 解决方法:文件--另存为--工具--常规.出现一个"保存选项"对话框,把"生成备份文件"前的勾去掉. 查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/Office/excel/

简单四步 菜鸟用Excel打出考试成绩表来

我在Excel教学中发现,先从简单的公式入手,直接进行实际问题地解决,能增强学生的学习兴趣.加快学习的进度,使学生更快的了解和掌握Excel.总之越简单越好,先入门再说.今天我们就先来学习打印输出一张成绩表. 第一步:表的设计及原始数据输入. 打开Excel程序就是一张空白表,无需特别设计,输入表头.姓名,按照成绩表的格式照搬过来就行.然后输入各门功课的成绩,每一个成绩放在一个单元格内.每一个单元格有一个地址,用列标和行标组成,如"高学健"的单元格地址是B2."物理"

用Excel打出考试成绩表来

  第一步:表的设计及原始数据输入. 打开Excel程序就是一张空白表,无需特别设计,输入表头.姓名,按照成绩表的格式照搬过来就行.然后输入各门功课的成绩,每一个成绩放在一个单元格内.每一个单元格有一个地址,用列标和行标组成,如"高学健"的单元格地址是B2."物理"在F1等.在输入时,根据各任课教师提供的成绩,可以用数字键盘按列输入,回车即可在下一个单元格中继续输入. 第二步:成绩的汇总及排序. 录入原始数据后,根据实际情况汇总.H2单元格中是"高学健&q

做一张能亮"红绿灯"的学生成绩表

每一位班主任老师在学生期中.期末或月考等考试后都会面临着这样一项工作:将全班学生的各科成绩在http://www.aliyun.com/zixun/aggregation/16544.html">Excel中汇成一张成绩总表.可是,每位班主任都想清楚地知道单科成绩第一名是哪个或哪些学生,哪些学生的哪些科目"亮了红灯"(不及格).当然,上面的两个问题通过Excel的"排序"或"筛选"功能都能够分别得到答案, 但是需要老师多次操作,且

合并Excel工作薄中成绩表的VBA代码,非常适合教育一线的朋友_python

这时候还需要把各个工作表合并到一起来形成一个汇总表.这时候比较麻烦也比较容易出错,因为各个表的学号不一定都是一致的.对齐的.因为可能会有人缺考,有人会考号涂错等等.特奉献以下代码,用于合并学生成绩表或者其它类似的表都可以.本代码特点在于不需要使用SQL或者Access等大头软件,只需要Excel就可以执行,非常方便,速度也不慢.转载请勿清除广告. 没有合适的局域网管理软件吗?你的网管工具够灵活够高效吗?看看这个network management software. ' ============

Excel应用教程:Excel数据透视表分类求学生成绩平均值

期末统考结束后,教育局要求全市学生的成绩都汇总在如图1的同一个Excel工作表中,并要求求出各学校.各专业.各学科的平均分. 全市三个学校.每个学校都有六个专业.每个专业都有五门课.各专业人数不等,总计有1000余人,工作量巨大.但如果采用Excel数据透视表来完成的话,呵呵,就简单多了. 一.创建数据透视表 点击菜单命令"数据→数据透视表和数据透视图",打开"数据透视表和数据透视图向导"对话框. 第一步,如图2所示,选择"Microsoft Excel数

编程-VFP 更新表数据时自动把系统时间写入表中指定一列插入 如何实现自动写入数据

问题描述 VFP 更新表数据时自动把系统时间写入表中指定一列插入 如何实现自动写入数据 VFP编程 现有 成绩 用户 两表 成绩表 三列 成绩 修改时间 用户 用户表 两列 用户名 密码 其中插入与更新成绩后,自动提取系统时间 写入 "修改时间列"( 包含年月日的时间 ) 并且根据系统登录的用户,将用户名写入成绩表 用户列 修改时间以及 用户 这两列只能通过程序自动写入 不可以人为写入 现有两表 教师 用户 如何实现插入教师表中教师号一列的数据后 自动将数据插入到用户表中 用户名列 用

datagridview导成EXCEL表时显示不同颜色

问题描述 考勤软件问题,在datagridview导成EXCEL表时根据迟到,早退,旷工三种状况,在存成EXCEL时,EXCEL表能对三种不同状态的行,显示黄,绿,红三种不同颜色,如何实现.EXCEL表姓名上午上班卡张三2011-5-1108:43..........如此这般的表. 解决方案 解决方案二:想问一下lz,看你的意思只是对生成excel的行的颜色有困惑,那么你应该可以会用C#导出Excel文件的相关操作塞,直接设置Cell对象的背景色就可以了.解决方案三:我觉得用listview,他