excel计算学生成绩

标签:
杂谈 |
分类: microsoft |
excel计算学生成绩
及格率的公式:
总分:=sum(b2:c4,f2:g4)
均分:=average(b2:c4,f2:g4)
合格数:=countif(b2:c4,>=60)+countif(f2:g4,>=60)
合格率:=合格数/12
优秀数::=countif(b2:c4,>=80)+countif(f2:g4,>=80)
优秀率:=优秀数/12
优秀数:=COUNTIF(e4:e38,">=80")
合格数:=COUNTIF(e4:e38,">=60")
排名次:如果你需要计算的在H列
设数据如图:
http://pic.wenwen.soso.com/p/20090928/20090928145949-1978724766.jpg
将公式 =ROUND(COUNTIF(B:B,">=60")/COUNT(B:B)*100,2)&"%"
复制后粘贴到所需位置,如图:
http://pic.wenwen.soso.com/p/20090928/20090928150239-1656654563.jpg
一、排列名次
要用到RANK函数,它是Excel中计算序数的主要工具,它的语法为:RANK(Number,Ref,Order),其中Number为参与计算的数字或含有数字的单元格,Ref是对参与计算的数字单元格区域的绝对引用,Order是用来说明排序方式的数字(如果Order为零或省略,则以降序方式给出结果,反之按升序方式)。例如:在E2:E50单元格区域中存放着某一个班的总分,那么计算总分名次的方法是:在F2单元格中输入“=RANK(E2,$E$2:$E$50)”按回车键可算出E2单元格内总分在班内的名次,我们再选定F2单元格,把鼠标指针移动到填充柄上按下鼠标左键向下拖动鼠标即可算出其他总分在班内的名次。
在计算的过程中我们需要注意两点:首先当RANK函数中的Number不是一个数时,其返回值为“#VALUE!”,影响美观。另外,Excel有时将空白单元格当成是数值“0”处理,造成所有成绩空缺者都是最后一名,看上去也很不舒服。此时,可将上面的公式“=RANK(E2,$E$2:$E$50)”改为“=IF(ISNUMBER(E2),RANK(E2,$e$2:$E$50),"")”。其含义是先判断E2单元格里面有没有数值,如果有则计算名次,没有则空白。其次当使用RANK函数计算名次时,相同分数算出的名次也相同,这会造成后续名次的空缺,但这并不影响我们的工作。同样的道理,我们也可以算出一个学生的总分在年级内的名次以及各科的班名次和年级名次,但是必须注意参与计算的数字单元格区域不一样。
二、求各种分数
求总分:主要用SUM函数,其语法格式为SUM(Ref),此处Ref为参与计算的单元格区域。例如:SUM(B2:E2)是表示求B2、C2、D2、E2四个单元格内数字的和。另外还用到SUMIF函数,语法格式为SUMIF(Range,Criteria,Sum_range),其功能是根据指定条件对若干单元格求和,参数Range表示引用,用于条件判断的单元格区域。Criteria表示数字、表达式或文本,指出哪些单元格符合被相加求和的条件。Sum_range表示引用,需要求和的实际单元格。注意:Criteria如果是文本,那么引号应该是半角的,而不是全角的,否则会出错!
求平均分:用AVERAGE函数,其语法格式为AVERAGE(Ref),此处Ref为参与计算的单元格区域。例如AVERAGE(F2:F50)是求F2:F50区域内数字的平均值。默认情况下,Excel 2002会忽略掉空白的单元格,但是它不忽略数值为0的单元格,要想忽略数值为0的单元格需要用到COUNTIF函数,其语法为COUNTIF(Range,Criteria),其含义是计算某个区域中满足给定条件的单元格数目。本例求F2:F50的平均分,如果忽略数值为0的单元格可以这样计算:SUM(F2:F50)/COUNTIF(F2:F50,"<>0")。另外如果要求去掉几个最高分和几个最低分然后取平均分的话,用到LARGE和SMALL函数,其语法格式为LARGE(array,k),含义是返回数组中第k个最大值,SMALL(array,k)的含义是返回数组中第k个最小值。如果我们求F2:F50中去掉两个最高分和两个最低分之后的平均分可以这样计算:“SUM(F2:F50)-LARGE(F2:F50,1)-LARGE(F2:F50,2)-SMALL(F2:F50,1)-SMALL(F2:F50,2))/COUNTIF(F2:F50-4)”。
求最高分、最低分:MAX和MIN函数,语法格式分别为MAX(Ref)和MIN(Ref),如上例中求F2:F50的最高分和最低分,应该这样:MAX(F2:F50)和MIN(F2:F50)。
三、求及格率、优秀率
求及格率:及格率即一个班级中某一科大于等于60分的比例,例如:B2:B50中是某一个班的语文成绩,可以这样求及格率:COUNTIF(B2:B50,">=60")/COUNT(B2:B50)。
求优秀率:例如:B2:B50存放的是初一一班的语文期末考试成绩,B2:B500存放的是初一全年级语文考试的成绩,如果规定全年级20%的学生为优秀,那么初一一班语文的优秀率应该这样计算:“COUNTIF(B2:B50,">="&&LARGE(B2:B500,INT(0.2COUNT(B2:B500))))/COUNT(B2:B50)”,其中LARGE(B2:B500,INT(0.2COUNT(B2:B500)))所求的是全年级语文分数前20%中最低的一个同学的分数,COUNTIF(B2:B50,">="&&LARGE(B2:B500,INT(0.2*COUNT(B2:B500))))则是求出了初一一班语文高于或等于这个同学分数的人数,最后再除以初一一班的总人数COUNT(B2:B50),所得就是初一一班的语文优秀率,如果想求其他班其他科目的优秀率,道理都是一样。
一、排名
A |
|
C |
D |
E |
F |
G |
H |
I |
J |
K |
L |
考号 |
姓名 |
班级 |
语文 |
数学 |
英语 |
政治 |
历史 |
生物 |
地理 |
总分 |
名次 |
Y001 |
李雨欣 |
703 |
85 |
98 |
94 |
93 |
88 |
98 |
95 |
651 |
1 |
H003 |
侯其文 |
703 |
81 |
97 |
92 |
93 |
96 |
89 |
95 |
643 |
2 |
H005 |
王亚丽 |
702 |
80 |
97 |
93 |
91 |
93 |
90 |
83 |
627 |
3 |
F001 |
奚明珍 |
701 |
89 |
87 |
90 |
89 |
97 |
87 |
87 |
626 |
4 |
F004 |
戴晟浩 |
704 |
82 |
89 |
90 |
89 |
95 |
87 |
87 |
619 |
5 |
F009 |
骆玉林 |
704 |
81 |
90 |
87 |
85 |
97 |
92 |
87 |
619 |
5 |
H001 |
周国庆 |
701 |
79 |
96 |
93 |
91 |
84 |
84 |
87 |
614 |
7 |
E001 |
杨景炫 |
702 |
87 |
91 |
85 |
83 |
95 |
84 |
87 |
612 |
8 |
二、优秀率和及格率
求优秀率:例如:B2:B50存放的是初一一班的语文期末考试成绩,B2:B500存放的是初一全年级语文考试的成绩,如果规定全年级20%的学生为优秀,那么初一一班语文的优秀率应该这样计算:“COUNTIF(B2:B50,">="&&LARGE(B2:B500,INT(0.2
COUNT(B2:B500))))/COUNT(B2:B50)”,其中LARGE(B2:B500,INT(0.2
COUNT(B2:B500)))所求的是全年级语文分数前20%中最低的一个同学的分数,COUNTIF(B2:B50,">="&&LARGE(B2:B500,INT(0.2*COUNT(B2:B500))))则是求出了初一一班语文高于或等于这个同学分数的人数,最后再除以初一一班的总人数COUNT(B2:B50),所得就是初一一班的语文优秀率,如果想求其他班其他科目的优秀率,道理都是一样。
以下图为例,说明在Excel中求“全科及格率”的方法:
http://bbs.mspil.edu.cn/BBS/skins/default/filetype/jpg.gif此主题相关图片如下:
http://bbs.mspil.edu.cn/BBS/UploadFile/2007-6/200762520543647482.jpg
输入公式=SUM(IF(C2:C11>=60,IF(D2:D11>=60,IF(E2:E11>=60,1,0))))/COUNTA(C2:C11)后同时按住shift+ctrl,回车就出现了{},也就得到了想要的数据。
这是求图中三科“全科合格率”的方法,若要求更多科目的,在SUM后面的括号内的区间中输入更多科目的相应区间即可,例如=SUM(IF(C2:C11>=60,IF(D2:D11>=60,IF(E2:E11>=60,IF(F2:F11>=60,1,0)))))/COUNTA(C2:C11)就多加了一科。
若要求全科及格的人数,不需要输入/COUNTA(C2:C11),同时按下shift+ctrl,回车即可。
注意:1、公式中的括号要完整,有几个左括号,就得有几个相应的右括号。2、各区间指定具体值(如>=60)后要用逗号隔开。3、COUNTA后面的区间可以是“姓名”或者其他科目所对应的区间,旨在“除以”总人数而已。