首先声明自己不是什么计算机专家,只是自己用过这里分析给需要的老铁们!废话不多说开始!
首先要介绍一下实现成绩分析的原理,通过数组公式获取某一科或总分成绩的第几个最大值,然后通过比较这个值并计数获得相应的结果。因此,用到的函数就是:LARGE函数返回数据组第K个最大值和SUM函数多条件计数。
例子:下图是几个班级的学生成绩。B列是班级,D列向右依次是各科及总分的成绩。我们的目的是要分析出各科及总分前十名各班的上线人数(俗称的优秀人数)以及各科前十名各班的双上线人数(俗称的有效人数)。
解释下:下图中=LARGE(成绩!D:D,$F2) 意思是返回D列中(也就是语文成绩)第F2(也就是第10)个最大值。说白了也就是得到语文成绩中第10个最大的数(也就是语文第十名的分数是102)。
解释:=SUM((成绩!D$1:成绩!D$200>=C$4)*(成绩!$B$1:成绩!$B$200=$A5)) 统计D1到D200之间成绩大于等于102并且班级属于01班的人数,公式输入完以后鼠标点在下面红框中的公式里,按ctrl+shift+enter三键结束公式,这样才能把公式变成数组,不然会出错误。
上面说的是单上线,比较简单,如果是双上线,稍微加个条件就能做到,由于语数外是每个学生都要学,所以和总分的人数是一样的,所以,语数外的双上线用=SUM((成绩!D$1:成绩!D$200>=N$4)*(成绩!$B$1:成绩!$B$200=$A5)*(成绩!$M$1:$M$200>=L$4)) 意思是语文前十名的双上线等于语文成绩里边大于等于102的并且班级属于01班的并且总分大于等于532分人数。同样按ctrl+shift+enter三键生成数组公式
物化生政史地是选科人数不是所有人都选了,所以双上线的总分这一项必须是选相应学科的学生的总分的排名。因此要用到下面的公式
解释:=LARGE(IF(成绩!G$2:G$26>0,成绩!$M$2:$M$26),$Q$2)意思是返回物理成绩大于0的总分里边的第8个最大值,也就是选物理的学生的总成绩的第八名的总分,由于加入了物理成绩大于0这个条件,所以也要用ctrl+shift+enter三键生成数组公式。
得到了选物理的学生的第八名的成绩(也就是总分的分数线),通过上面讲的公式得到物理第八名的成绩(也就是物理的分数线)就可以统计出物理前八 名的双上线人数,详见下面公式:
=SUM((成绩!G$1:成绩!G$200>=Q$4)*(成绩!$B$1:成绩!$B$200=$A5)*(成绩!$M$1:$M$200>=Q$1)) 意识是物理成绩大于等于62并且班级属于01班的并且总分大于等于535的人数。同样按ctrl+shift+enter三键生成数组公式
最后说几点注意事项:
1、成绩表格里的班级必须和统计表格里的班级对应起来否则会找不到。也就是说班级是01的文本类型 统计里边也得是这样,如果统计表格里的班级01班改成1班 就会出现错误。
2、合理利用功能键F4,这个功能键可以灵活锁定单元格,技巧要自己摸索,一句话说不清楚。
3、成绩表格里的学生分数要正常的数值不要有的单元格的属性是常规,有的单元格的属性是文本,这样统计就会出错。
最后,第一次发文章可能有的地方没说明白,需要的可以给我留言。希望对大家有所帮助。