文档库 最新最全的文档下载
当前位置:文档库 › 用Excel设计标准化试卷的自动判卷系统

用Excel设计标准化试卷的自动判卷系统

计算机与现代化

2012年第1期

JISUANJI YU XIANDAIHUA

总第197期

文章编号:1006-

2475(2012)01-0199-04收稿日期:2011-09-28作者简介:李花(1972-),女(朝鲜族),吉林龙井人,中国传媒大学计算机与网络中心讲师,硕士,研究方向:多媒体技术;张伟

娜(1978-),女,山西运城人,讲师,硕士,研究方向:计算机应用。

用Excel 设计标准化试卷的自动判卷系统

花,张伟娜

(中国传媒大学计算机与网络中心,北京100024)

摘要:在日常的教学过程中,各种测验、考试,必不可少,因而高效地进行判卷对减轻教师的工作量有非常重要的意义。使用专业的无纸化考试系统,不仅投入多,且不一定适合自己的教学。本文根据通用的标准化试卷的判卷需求,利用Ex-cel 的数据处理、数据管理和数据安全功能,设计无纸化考试的标准化试卷模板,将Excel 作为开发平台,用VBA 语言实现标准化试卷的自动判卷功能,从而提高判卷效率,减少教师的工作量。该系统操作简单、使用安全、高效,在教学中很有实用价值。

关键词:Excel ;VBA ;标准化试卷;自动判卷中图分类号:TP317.1

文献标识码:A

doi :10.3969/j.issn.1006-2475.2012.01.053

Design of Automatic Grading System for Standardized Examination Papers by Excel

LI Hua ,ZHANG Wei-na

(Computer and Network Center ,Communication University of China ,Beijing 100024,China )

Abstract :In the daily teaching process ,many kinds of tests and examinations are indispensable ,so grading efficiently is impor-tant for reducing teacher ’

s workload.Professional paperless examination system not only needs invest more resources ,but also not suits our own all teaching needs.Based on the need of general grading standardized paper and using Excel features of data processing ,data management and data security etc ,this paper designs standardized paperless examination template.And using Excel as a development platform ,automatic grading system of standard examination paper is implemented by VBA langue.Auto-matic grading system not only improves teachers ’work efficiency ,but also reduces the workload of teachers obviously.As the system is simple ,safe and efficient ,there are important practical values in teaching applications.Key words :Excel ;VBA ;standardized examination papers ;automatic grading

0引言

随着网络和计算机技术的发展,教学中使用无纸

化的作业或试卷越来越普遍,

但若没有专业的判卷系统,判卷工作量将非常大。Excel 是功能非常强大的电子表格软件,它不仅提供了丰富的函数、强大的数据管理功能,还支持VBA 语言开发应用程序,可以使重复的工作自动完成。本文设计的自动判卷系统通过将Excel 与VBA 结合起来,实现了无纸化考试中标准化试卷的制作及自动判卷功能,极大地提高了工作效率。

1需求分析

标准化的试题题型大多以选择题、判断题和填空

题为主,试卷一般由试题和答题两个文件组成。在实际操作中,可将试卷打包发布,要求学生提交答题文件,教师判卷后可以将答题文件反馈给学生。但由于有些学生操作马虎或不熟练,很容易出现答题时输入的答案不规范丢分或学生答题时破坏了卷面无法进行统计等问题。因此,设计的自动判卷系统不仅要使得标准化试卷的制作既简单、又方便修改,还需要规范学生的操作,

杜绝学生因误操作出现丢分的现象。用Excel 设计的自动判卷系统需满足如下要求:

(1)保护答题卷面,如题号、统计中使用的公式等。

(2)限制学生答题的位置并要求答题规范,例如答案必须在相应题号的“答案”一列中输入,单选题

答案须为字母A 、

B 、

C 、

D 之一;判断题答案须为T

200计算机与现代化2012年第1期或F。

(3)在教师判卷时,需显示正确与否,并统计答

题结果。不仅统计出不同题型的错误个数,还要根据

不同题型的分数,显示出最终得分。

(4)为了保证数据安全,标准答案要和答题卷分开存放。

(5)完成批量判卷,对打开的多个答题文件能够完成批量判卷。

本文以Office2007为开发平台,设计标准化试卷的判卷系统,包括试题、答题和标准答案的模板,以便每次使用时直接从模板生成新的试题、答题和标准答案文件。

2判卷系统的设计

判卷系统需要设计试题、答题和标准答案3个模板,其中关键是答题和标准答案模板的设计。

2.1试题模板的设计

新建Word文档,保存为Word模板,扩展名为.dotx。设计者可在Word文档中自行设置字体、段落、编号等格式,并写清试题类型以及答案书写的要求。根据设计的模板创建的试题文件,可以参考图1

图2答题卷模板

创建不同题型数据表格后,通过Excel功能限制输入答案的位置以及答案选项,并产生动态边框线。以“单选题”数据表格为例,一般每一种题型数量不超过100道题,则具体操作方法如下:

(1)利用数据有效性规则,限制答案选项。选择B3:B102区域,在数据有效性设置的“有效性条件”中选择“允许”选项为“序列”,“来源”中输入“A,B,C,D”,并取消选择“提供下拉箭头”,此功能使得学生输入答案时必须输入A、B、C、D四个字母之一。

(2)取消对“答案”一列的保护。选择B3:B102区域,在“设置单元格格式”对话框的“保护”标签中取消“锁定”,此功能使得当Sheet1工作表被设置为保护时,学生只能编辑“答案”一列。

(3)利用条件格式,设置动态边框线。选择A3:C102数据表格区域,在“条件格式”的“新建规则”对话框中选择规则类型为“使用公式确定要设置格式的单元格”,在编辑框中输入“=¥A3<>“””,并设置“外边框”格式。此“条件格式”的作用在于不管将来单选题题量如何增加或减少,只要输入了单选题题号,将会自动生成表格线,只要删除了题号,表格线将自动被删除。

同样的方式,在“判断题”和“填空题”数据表格中取消“答案”一列的保护并设置动态边框线,在“判断题”数据表格的“答案”一列中还需要使用数据有效性规则限制输入项为T或F之一。

在“统计表”数据表格内,输入公式统计不同题型的错误个数以及得分。如统计“单选题错误个数”时,在N2单元格内输入公式:“=COUNTIF(C:C,“?”)”,在统计“得分”时,在N9单元格内输入公式:“=N8-N2*N3-N4*N5-N6*N7”。

所有的表格创建完之后,保存模板文件。

2.3标准答案模板文件的设计

创建Excel文件,保存为启用宏的模板文件,扩展名为.xltm。选择Sheet1工作表,创建“单选题”、“判断题”和“填空题”的数据表格,这些数据表格只包含“题号”和“答案”两列,并利用“条件格式”设置动态边框线。

2012年第1期李花等:用Excel设计标准化试卷的自动判卷系统201

为了进行自动判卷,在Sheet1工作表内插入“开发工具”选项卡的ActiveX控件中的命令按钮,在“属性窗口”中设置Caption属性为“自动判卷”,双击此命令按钮,在Click事件代码中输入VBA代码完成自动批卷。这段代码主要完成如下功能:

(1)从已打开的工作簿文件中,选取要判卷的答题文件。

(2)取消对答题文件中Sheet1工作表的保护。

(3)比较标准答案和答题文件中的答案,完成判卷。单选题和判断题的判卷很简单,因为这种题型只有唯一的答案,但填空题的情况稍微复杂一些。因为有些填空题有可能出现多个可能的答案。举个例子来说,《计算机信息技术基础》中有这样一道填空题,“一个完整的计算机系统由()和()组成。”这一道题两个填空的答案是“硬件系统”和“软件系统”,也可以是“软件系统”和“硬件系统”,也就是说两个填空题的答案是并列的、无关顺序的。若有这样的题,在标准答案文件中输入答案时要求答案项和答案项之间必须用顿号隔开。若此题的题号为1,则相应的两个填空的题号可以给出1_1和1_2,对应的第一个答案位置上输入“硬件系统、软件系统”,而在第二个答案位置上可以为空,表示答案来自于前一个非空的单元格,也可以输入相同的答案“硬件系统、软件系统”。根据此模板产生的标准答案文件,如图3所示

图3标准答案

相应地,自动判卷的具体代码如下:

Private Sub CommandButton1_Click()

Dim fileName,sheetPassword As String

Dim tempX As Integer

Dim singleAnswer As String

Dim trueOrfalseAnswer As String

Dim fillAnswer,fillRightAnswer,midRightAnswer,rightOr-wrong,optionAnswer As String’和填空题判卷有关的字符串变量

Dim startPoint,endPoint,rightAnswerLen As Integer’和填空题判卷有关的整型变量

Dim yesOrno As String

Dim fileOpenCount,i As Integer

fileOpenCount=Workbooks.Count

sheetPassword=InputBox(?请输入解除工作表保护密码!?)

For i=1To fileOpenCount

Workbooks(i).Activate

fileName=ActiveWorkbook.name

If((fileName<>?标准答案.xlsm?)And(fileName<>?PERSONAL.XLSB?))Then’判卷时排除标准答案文件和个人宏工作簿文件

yesOrno=MsgBox(?对文件进行批改??,vbOKCancel,fileName)

If(yesOrno=vbOK)Then

Application.ScreenUpdating=False

Sheets(?Sheet1?).Protect Password:=sheetPassword,Con-tents:=False’解除工作表保护

...(此处省略选择题和判断题判卷代码)

tempX=3

optionAnswer=??

While(Not IsEmpty(Sheets(?Sheet1?).Cells(tempX,9).Value))’判断填空题题号是否为空

fillAnswer=Sheets(?Sheet1?).Cells(tempX,10).Value

’取得相应题号的答案

Windows(?标准答案.xlsm?).Activate

fillRightAnswer=Sheets(?Sheet1?).Cells(tempX,8).Value’取得相应题号的正确答案

rightOrwrong=??'判卷结果

startPoint=1

If(fillRightAnswer=??)Then

fillRightAnswer=optionAnswer

End If

endPoint=InStr(startPoint,fillRightAnswer,?、?)

If(endPoint=0)Then

If(fillAnswer=fillRightAnswer)Then

rightOrwrong=?√?

Else

rightOrwrong=???

End If

Else

If(Replace(optionAnswer,?、?,??,1)=??)Then

optionAnswer=fillRightAnswer

Else

fillRightAnswer=optionAnswer

End If

rightAnswerLen=Len(fillRightAnswer)

Do

endPoint=InStr(startPoint,fillRightAnswer,?、?)

If(endPoint=0)Then

endPoint=rightAnswerLen

midRightAnswer=Mid(fillRightAnswer,startPoint,end-

Point-startPoint+1)

Else

midRightAnswer=Mid(fillRightAnswer,startPoint,end-Point-startPoint)

End If

If(fillAnswer=midRightAnswer)Then

rightOrwrong=?√?

optionAnswer=Replace(fillRightAnswer,midRightAn-swer,??)

Exit Do

Else

startPoint=endPoint+1

End If

Loop Until(startPoint>rightAnswerLen)

If(startPoint>rightAnswerLen)Then

rightOrwrong=???

End If

End If

Windows(fileName).Activate

Sheets(?Sheet1?).Cells(tempX,11).Value=rightOr-wrong

tempX=tempX+1

Wend

Windows(fileName).Activate

Application.ScreenUpdating=True

End If

End If

Next i

End Sub

上述代码在Excel2007环境下运行通过。

3判卷系统的应用

3.1生成试卷

根据试题模板和答题模板、标准答案模板生成新文件,其中根据标准答案模板产生的文件命名为“标准答案.xlsm”(保存为启用宏的工作簿文件,文件名和源代码有关)。在试题文档中输入试题内容,在标准答案文件中输入相应的题号和每题答案,在答题文件中输入题号和每一种题型的每道题分数,也可将标准答案中的题号复制、选择性粘贴到答题文件的题号一列。答题文件中的Sheet1工作表还需要设置保护并输入密码。

3.2发布和判卷

打包试题文件和答题文件,通过网络平台发布。要求学生在答题文件中输入答案,并将文件名更名为自己的学号_专业.xlsx提交。这个过程并不难实现,编写一个批处理文件,可把打包文件发布到每台机子上,为了避免出现答题文件被复制等现象,可断开网络、禁用USB接口,考试结束后同样可用批处理文件收卷保存。教师打开标准答案文件,并将学生答题文件依次打开。单击标准答案文件的“自动判卷”按钮,输入解除工作表密码,就可以选择答题文件完成判卷,判卷结果如图4所示

图4判卷结果

4Excel判卷系统的优点

本文设计的Excel自动判卷系统虽然没有其他专业考试系统的随机抽题、发布、收卷等功能,但优点也很突出。

(1)经济实用。

只需要Office软件和网络平台就可以实现,不需要投入资金另外购买软件和售后服务,也不需要维护费、服务费等。

(2)制作速度快,修改方便。

根据自动判卷系统模板生成试题、答题、标准答案文件既简单又快速,并且可以根据不同的教学需求方便、直观地进行修改。比如选择题既有一分题也有两分题时,重新设计答题模板的“统计表”即可。

(3)安全性高。

本系统中将标准答案和答题卷分开保存,而且在答题文件中使用数据有效性规则、单元格和工作表保护等设置避免出现学生的误操作。

(4)判卷速度快,成绩反馈也方便。

一份答题文件从打开到判卷结束统计出结果,不过短短几秒,效率非常高。答题文件可以完整地保存下来,以便学生查阅。

5结束语

笔者设计的Excel自动判卷系统,在实践中得到了很好的验证。因制作简单、修改方便、效率高,得到了很多教师的认可。目前,在学校或企事业单位中Office软件非常普及,网络平台的应用也很普遍。若不考虑随机抽题、组卷、在线控制等因素,自动判卷系统可轻松完成教学中的作业、考试、竞赛等任务,也可以方便地应用在企事业单位的客服测评、问卷调查等工作中。使用Excel自动判卷系统非常经济、有效,因此该系统具有很好的推广价值。

(下转第206页)

图4运行效果图

用户在此页面上可以进行一些操作。

3结束语

本文详细分析了IPTV方面的相关知识,对其中的一个功能如EPG所使用的重要技术Webkit进行了阐述和分析,并对Webkit引擎作了一些改进,且成功地将其移植到ARM11上。实验结果显示基于Webkit的嵌入式浏览器是非常优越的,并且其为开源代码,可移植性和兼容性也相当不错,因此通过改进的嵌入式浏览器有着广泛的应用前景。以后相当长的一段时间,笔者将进一步研究基于Webkit的嵌入式Linux IPTV机顶盒浏览器,并进行实验验证,将其尽早转化为用户满意的产品。

参考文献:

[1][美]辛普森,[美]格林菲尔德.IPTV与网络视频:拓展广播电视的应用范围[M].郎为民,焦巧译.北京:机械

工业出版社,2008.[2]李海昌.网络电视的现状和前景[EB/OL].http://www.doc88.com/p-99694682960.html,2010-11-29.

[3]刘学峰,陈晨.网络电视:跨界发展的挑战[J].网络传播,2011(1):38-40.

[4]朱陈洁,叶德建.面向嵌入式机顶盒终端的P2P网络电视直播系统的设计与实现[J].中国图象图形学报,

2007,12(10):1706-1709.

[5]华清远见嵌入式培训中心.嵌入式Linux应用程序开发标准教程(第2版)[M].北京:人民邮电出版社,2009.[6]韦东山.嵌入式Linux应用开发完全手册[M].北京:人民邮电出版社,2008.

[7]SHDX/ZS/CZ/JG/002/A/2008,机顶盒与IPTV业务运营平台接口技术规范V2.2[S].

[8]Christopher Hallinan.Embedded Linux Primer:A Practical Real-World Approach[M].Prentice Hall,2006.

[9]Webkit.The Webkit Open Source Project[EB/OL].http:// www.webkit.org/,2011-02-06.

[10]赵经纬,周余,王自强,等.基于Webkit的嵌入式浏览器的研究与实现[J].电子测量技术,2009,34(3):

135-138.

[11]侯炯.Webkit分析报告[R].中兴通讯股份有限公司,2008.

[12]侯炯.Webkit分析报告Ⅱ[R].中兴通讯股份有限公司,2009.

[13]姜江.Webkit--Webkit for Android[EB/OL].http://www.jjos.org/android/2010/05/10/312_webkit-webkit-for-an-

droid.html,2010-05-10.

[14]杜全稳.DirectFB+GTK+Webkit在ARM上的移植[EB/OL].http://www.eifr.com/article.php?id=1152,

檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼檼

2010-10-17.

(上接第202页)

参考文献:

[1]郑开涛,游碧蓉.用Excel来制作标准化试卷[J].福建电脑,2010(11):185-186.

[2]杨军.用Excel来制作标准化试卷自动阅卷系统[J].电脑知识与技术:学术交流,2006(36):206-207.

[3]张光建.基于VB语言无纸化考试系统设计与实现[J].福建电脑,2010(11):147-148.

[4]刘广孚,殷爱贞.巧用Excel处理学生成绩[J].微型电脑应用,2010,26(10):58-61.

[5]甘伟明.用Excel构建计算机等级考试自动改卷评分系统[J].电脑学习,2010(2):54-55.

[6]陈明.无纸化考试系统综述[J].计算机教育,2007(5):12-15.

[7]陈旭平.利用Excel设计制作在线自测系统[J].中国科技信息,2005(14):68,89.[8]李菲菲.基于计算机网络环境下的无纸化考试[J].福建电脑,2005(8):89,83.

[9]王与巷.批量修改标准化试卷--Excel关键时刻显身手[J].大众电脑,2004(11):60-61.

[10]刘占阳,孙海波,王亮,等.计算机无纸化考试系统的设计与实现[J].河北省科学院学报,2003,20(4):

217-220.

[11]道奇,等.精通Excel2007中文版[M].汪青青,等译.北京:清华大学出版社,2008.

[12]庄东填,利业鞑.Excel2007中文版实用教程[M].北京:中国水利水电出版社,2008.

[13]罗刚君.Excel VBA程序开发自学宝典[M].北京:电子工业出版社,2009.

[14]韩加国,等.Excel VBA从入门到精通[M].北京:化学工业出版社,2009.

相关文档
相关文档 最新文档