- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于VBA的成绩分析的实现及演示文稿的
生成
2008年4月
第21卷第2期
保定学院
JOURNALOFBAOD1NGUNIVERSITY
Apr.2008
Vol-2 lNo.2
文章编号:1674—2494(2008)02—0070—03
基于VBA的成绩分析的实现及演示文稿的生成
程芳,沈红岩
(河北农业大学信息科学与技术学院,河北保定071001)
摘要:成绩分析是每次考试之后教师的首要工作,利用Office内_?VBA,实现了成 绩分析,并且利用统计后
的数据自动生成PowerPoint演示文稿,极大地提高了成绩分析的工作效率.
关键词:演示文稿;Excel;PowerPoint;VBA
中图分类号:TP311.51文献标识码:A
成绩分析是每一位教师在考试之后都必须做的一项重要工作,也是令大多数教师 苦恼的一件事情.目前,手工统计数据工
作量大,而且经常会出现错误?并且统计数据生成后,再手工将数据做/-PowerPoint 演示文稿,此过程耗费时间长,效率低.
而随
着计算机的普遍应用,利用计算机自动实现数据统计及牛成演示文稿势在必行. 利用VBA进行数据统计
这里以基本数据统计为例进行说明.
对每一学科的考试,教师一般需要统计的基本数据如图1所示.
Excel提供了很多数据统计函数,在Excel中进行统计可以起到事半功倍的效果. 因此,数据统计使用Excel为平台不失为明
智的选择.
为方便统计以上数据,可在Excel屮建立如下3个工作表:”授课表”,
”学生分数”和”基本数据统计…授课表”存放教师姓名以及所授课班级,
”学牛分数”存放学牛成绩,”基木数据统计”是要统计的基木数据的1个模
板,如图1所示,
在统计数据前,首先需要进行一些准备工作?为了比较方便地统计一 h
述数据,需要先将”学生分数”按班级排序,以便按照班级划分?可以通过下 面的语句实现:
Sheets(” 学生分数).Select
I矗卷曩宅毒§濯辫
1教师姓名斑级总人数
等级优秀良好中等及格不及格
2100,,-,9089?80 憎?70amp;卜 60
3人数分布
畦百分比
5及格率试卷最高分
6平均分试卷最低分
图1基本数据统计表
Selection.SortKey l:=Range(nA2n),Orderl:=xl Ascending,Header:=—
xIGuess9OrderCustom:=hMatchCase:=False5Ofientation:=xlTopToBottom5—
SortMethod:=xlPinYin,DataOptionl:=xlSortTextAsNumbers
然后,在统计每个班的各项数据时就比较简单了?只要知道每班的首尾行号就可以 知道本班的范围,方法为顺次向下一行
比较?只要下一行的班级和本行的不一样,就可以确定1个班已经结束.下面代码可 以实现这个功能.
Sheets(” 学生分数 ”).Select
Dimfirstl,Endl firstl=2:endl=2
While fRange(Aamp;endi). Valuelt;gt;???‘)
If(Range(Aamp;firstl). Valuelt;gt;Range(,A,,amp;endl).Value)Then Sheets(n基本数据统计).Select
数据统计相关代码
firsti=endi
Sheets(n 学生分数).Select
Else
endi:endi+l
收稿日期:2008—02—19
作者简介:程芳(1980—),女,河北秦皇岛人,工学硕士,助教
程芳,沈红岩:基于VBA的成绩分析的实现及演示文稿的生成71
End儿
Wend
接着,就可以进行数据统计了 ?具体实现方法如下:
统计总人数
统计总人数可以使用COUNTA0函数1I1.COUNTA0函数用来统计非空单元格的 数目?这里要统计数据的范围为”学生分
数”图1中A列第firsti行?lJendi — 1行?因此,使用如下代码可以实现统计总人数 (存放于F1).
Range(Fr,).Value=,,=COUNTA(学生分数!amp;firstiamp;:amp;endi —
1 amp;”)”
统计各分数段人数分布
人数分布可以使用COUNTIF0函数.COUNTIF0函数用来统计满足给定条件的单 元格的数目121.因此,可以将上面的代码
加以修改,用于统计人数分布?如优秀学生人数(存放于B3)如下:
Range(HB3H).Value=n=COUNTIF( 学 生 分
数!C”amp;firstamp;,,:Hamp;”C”amp;endi 一 1amp;”,???gt;=90???)” 在统计良好学牛时,由于COUNTIF0函数不支持多重条件,如大于8
文档评论(0)