论文部分内容阅读
摘要:VBA(Visual Basic for Application)是Office系列软件的内置编程语言,本文介绍了在excel中,如何使用[视图]|[工具栏]|[控件工具箱]中的几种控件,结合VBA,开发适用于各类主要采用客观性题型考试系统的设计思想和开发过程。
关键词:控件 VBA编程 无纸化考试
中图分类号:TP317.1
文献标识码:A
文章编号:1673-1875(2007)05-035-02
前言
考试是教学活动中的一个重要环节,是检验教师授课质量、学生学习效果的重要手段。长期以来,学校的各种考试大都是以纸、笔为介质的传统笔试方式,这种方式下,组织一次考试通常要经过这样几个步骤,即:出题、印制试卷、安排监考、收集试卷、阅卷、分析总结,其工作量大、保密性差、考试结束后的阅卷、成绩评定、试卷分析等工作周期长、人为因素多,不仅花费大量的人力和财力,而且考试的公正性、准确性也常受到质疑。这些弊端迫切要求对传统考试形式进行改革。本文就笔试中经常涉及到的客观性题型:判断题、单项选择题、多项选择题、真空题,选择了大家都很熟悉的Excel2000,使用[视图]|[工具栏]|[控件工具箱]中的几种控件,结合VBA编程,对开发无纸化考试系统进行了探索。
一、无纸化考试系统的需求分析
实现无纸化考试,首先要准确、完整和规范的描述系统中用户的需求,其次,充分考虑到考生的答题行为,为自动化判卷找到理论依据,包括考生可能的答题顺序,如多项选择题,正确答案为ABC,但考生作答时,可能的答题顺序是CBA等一系列情况。经过提炼、整理需求以后,我们认为,系统应该解决如下问题:
1、无纸化考试系统的试题卷面设计要能满足笔试中的各类客观性题型。
2、系统要方便考生选择、输入答案,可以修改答案。
3、计算机能够正确识别考生输入的各种答案,并且可以判断正误。
4、考生答题结束后,计算机能自动阅卷,并自动计分。
明确了系统需求以后,接下来我们来分析一下传统考试的题型。通常笔试中涉及到的题型有:判断题、单项选择题、多项选择题、填空题、计算题、问答题等。由于目前计算机还没有足够的能力来解决主观题,所以,本文主要针对适用于英语、计算机等级考试等各类主要采用判断题、单项选择题、多项选择题、填空题这几种客观性题型的考试,进行基于Excel2000下无纸化考试系统的VBA开发。
二、无纸化系统的卷面设计
1、判断题
判断题是笔试中常见的题型,考生选择“对”和“错”选项。判断题的命题通常是一些比较重要的概念、事实、原理或结论,用来考查考生对这些概念、事实、原理或结论的理解和掌握程度,考生答题时结论必须明确。判断题题目可以分为:题目,选项或答题区。对于判断题,题目可以用单元格来放置,选项部分采用选项按钮控件(optionbutton)或者组合框控件(combobox)来完成。设计界面如图1所示:
图1 判断题
2、单项选择题
从A、B、C、D四个选项中,选择一个正确的答案。其设计和判断题类似,选项部分采用组合框(combobox)控件来完成。只是选项由两项提高到了4项,而且每个选项要给出选项的说明。设计界面如图2所示:
图2 单项选择题
3、多项选择题
从A、B、C、D四个选项中,确定正确答案(1-4个)。它的答案具有多样性,答案不唯一,因此多项选择题控件不能选用组合框。选项部分采用复选框控件(checkbox)来完成,而且,各选项应该具有无序性、独立性和平等性,即:考生答题顺序与答案的正确性无关,如:答案“AB”和答案“BA”都视为正确答案,选项之间互相之间没有干扰。设计界面如图3所示:
图3 多项选择题
4、填空题
要求考生直接输入答案。计算机判断正误时,直接对比填入答案和标准答案是否一致就可以了。出题时,确保答案的唯一性。因为计算机还不具备模糊识别的能力。如“计算机”为正确答案,那么答案如果填为“电脑”、“微机”在计算机阅卷时将判断为错误。设计界面如图4所示:
图4 填空题
三、考生将答案输入到答题卡
现在的标准化考试中,习惯采用答题卡方式答题,这样,答案都集中在一起,每个区域放置相同题型的答案,既便于集中批改,又方便查找,大大提高了阅卷的效率。同样,为了方便计算机识别答案,也为了简化代码的编写,我们也将每种题型的答案都集中在一张答题卡中,而且让答题卡和答题界面相关联。设计界面如图5所示:
图5 答题卡和试题卷面的对应关系
本系统对于各种题型的输入方式的要求是:当考生在判断题、单项选择题、多项选择题、填空题这几张工作表做出判断并选择后,系统自动将考生答案录入至考生答题卡这张工作表的对应位置。而且,当考生修改答案时,考生答题卡中的答案也随考生的修改而做出相应的修改。把考生答题卡和前面设计的判断题卷面结合起来,它们之间的关系如图5所示,这里只列举了判断题,其它几种题类似图5的对应关系。
四、考试系统自动阅卷
考生答完试卷以后,在考生答题卡这张工作表上有个“开始计分”命令按钮(commandbutton)单击以后,系统自动分别将从考生答题卡工作表和标准答案工作表提取出各种题型单元格里的数据进行——比较,一样的计为正确,总分加上相应的分值,不一样的计为错误,不计分数,标准答案的界面和考生答题卡的界面设置基本上保持一致,以便于代码的编写。
判断题自动评分程序如下:
sub
Dim a as string ‘声明变量
Dim b as string
Dim i as integer, n as integer
Dim score as integer
Score=0
For i=1 to 3 ‘分别从考生答题卡工作表和标准答案工作表中提取出单元格的值进行判分
a=worksheets(5).cell(5,i).value
b=worksheets(6).cell(5,i).value
if a=b then score=score+3
next i
msgbox “判断题分数为”&score
end sub
五、结束语
随着教育思想的更新和科学技术的进步,在实践中积极探索开发适用于各种标准化题型的无纸化考试系统,能使考务工作全面实现无纸化,真正把教师从繁重、费时的出卷、阅卷工作中解放出来。无纸化考试系统具有良好的开发性,其成卷形式灵活,实现简单,实用性强,保密性好等优点,自动评阅、计分、成绩存档等功能。将会更好地适应现代教育形势。
参考文献:
[1]夏强.Excel VBA应用开发与实例精讲[M].科学出版社,2006.
[2]王新耀.无纸化考试系统对计算机等级考试促进作用的分析[J].成都航空职业技术学院学,2006,3.
[3]陶永进,雷超阳.浅谈新型无纸化考试系统[J].长沙通信职业技术学院学报,2004,3(1).
关键词:控件 VBA编程 无纸化考试
中图分类号:TP317.1
文献标识码:A
文章编号:1673-1875(2007)05-035-02
前言
考试是教学活动中的一个重要环节,是检验教师授课质量、学生学习效果的重要手段。长期以来,学校的各种考试大都是以纸、笔为介质的传统笔试方式,这种方式下,组织一次考试通常要经过这样几个步骤,即:出题、印制试卷、安排监考、收集试卷、阅卷、分析总结,其工作量大、保密性差、考试结束后的阅卷、成绩评定、试卷分析等工作周期长、人为因素多,不仅花费大量的人力和财力,而且考试的公正性、准确性也常受到质疑。这些弊端迫切要求对传统考试形式进行改革。本文就笔试中经常涉及到的客观性题型:判断题、单项选择题、多项选择题、真空题,选择了大家都很熟悉的Excel2000,使用[视图]|[工具栏]|[控件工具箱]中的几种控件,结合VBA编程,对开发无纸化考试系统进行了探索。
一、无纸化考试系统的需求分析
实现无纸化考试,首先要准确、完整和规范的描述系统中用户的需求,其次,充分考虑到考生的答题行为,为自动化判卷找到理论依据,包括考生可能的答题顺序,如多项选择题,正确答案为ABC,但考生作答时,可能的答题顺序是CBA等一系列情况。经过提炼、整理需求以后,我们认为,系统应该解决如下问题:
1、无纸化考试系统的试题卷面设计要能满足笔试中的各类客观性题型。
2、系统要方便考生选择、输入答案,可以修改答案。
3、计算机能够正确识别考生输入的各种答案,并且可以判断正误。
4、考生答题结束后,计算机能自动阅卷,并自动计分。
明确了系统需求以后,接下来我们来分析一下传统考试的题型。通常笔试中涉及到的题型有:判断题、单项选择题、多项选择题、填空题、计算题、问答题等。由于目前计算机还没有足够的能力来解决主观题,所以,本文主要针对适用于英语、计算机等级考试等各类主要采用判断题、单项选择题、多项选择题、填空题这几种客观性题型的考试,进行基于Excel2000下无纸化考试系统的VBA开发。
二、无纸化系统的卷面设计
1、判断题
判断题是笔试中常见的题型,考生选择“对”和“错”选项。判断题的命题通常是一些比较重要的概念、事实、原理或结论,用来考查考生对这些概念、事实、原理或结论的理解和掌握程度,考生答题时结论必须明确。判断题题目可以分为:题目,选项或答题区。对于判断题,题目可以用单元格来放置,选项部分采用选项按钮控件(optionbutton)或者组合框控件(combobox)来完成。设计界面如图1所示:
图1 判断题
2、单项选择题
从A、B、C、D四个选项中,选择一个正确的答案。其设计和判断题类似,选项部分采用组合框(combobox)控件来完成。只是选项由两项提高到了4项,而且每个选项要给出选项的说明。设计界面如图2所示:
图2 单项选择题
3、多项选择题
从A、B、C、D四个选项中,确定正确答案(1-4个)。它的答案具有多样性,答案不唯一,因此多项选择题控件不能选用组合框。选项部分采用复选框控件(checkbox)来完成,而且,各选项应该具有无序性、独立性和平等性,即:考生答题顺序与答案的正确性无关,如:答案“AB”和答案“BA”都视为正确答案,选项之间互相之间没有干扰。设计界面如图3所示:
图3 多项选择题
4、填空题
要求考生直接输入答案。计算机判断正误时,直接对比填入答案和标准答案是否一致就可以了。出题时,确保答案的唯一性。因为计算机还不具备模糊识别的能力。如“计算机”为正确答案,那么答案如果填为“电脑”、“微机”在计算机阅卷时将判断为错误。设计界面如图4所示:
图4 填空题
三、考生将答案输入到答题卡
现在的标准化考试中,习惯采用答题卡方式答题,这样,答案都集中在一起,每个区域放置相同题型的答案,既便于集中批改,又方便查找,大大提高了阅卷的效率。同样,为了方便计算机识别答案,也为了简化代码的编写,我们也将每种题型的答案都集中在一张答题卡中,而且让答题卡和答题界面相关联。设计界面如图5所示:
图5 答题卡和试题卷面的对应关系
本系统对于各种题型的输入方式的要求是:当考生在判断题、单项选择题、多项选择题、填空题这几张工作表做出判断并选择后,系统自动将考生答案录入至考生答题卡这张工作表的对应位置。而且,当考生修改答案时,考生答题卡中的答案也随考生的修改而做出相应的修改。把考生答题卡和前面设计的判断题卷面结合起来,它们之间的关系如图5所示,这里只列举了判断题,其它几种题类似图5的对应关系。
四、考试系统自动阅卷
考生答完试卷以后,在考生答题卡这张工作表上有个“开始计分”命令按钮(commandbutton)单击以后,系统自动分别将从考生答题卡工作表和标准答案工作表提取出各种题型单元格里的数据进行——比较,一样的计为正确,总分加上相应的分值,不一样的计为错误,不计分数,标准答案的界面和考生答题卡的界面设置基本上保持一致,以便于代码的编写。
判断题自动评分程序如下:
sub
Dim a as string ‘声明变量
Dim b as string
Dim i as integer, n as integer
Dim score as integer
Score=0
For i=1 to 3 ‘分别从考生答题卡工作表和标准答案工作表中提取出单元格的值进行判分
a=worksheets(5).cell(5,i).value
b=worksheets(6).cell(5,i).value
if a=b then score=score+3
next i
msgbox “判断题分数为”&score
end sub
五、结束语
随着教育思想的更新和科学技术的进步,在实践中积极探索开发适用于各种标准化题型的无纸化考试系统,能使考务工作全面实现无纸化,真正把教师从繁重、费时的出卷、阅卷工作中解放出来。无纸化考试系统具有良好的开发性,其成卷形式灵活,实现简单,实用性强,保密性好等优点,自动评阅、计分、成绩存档等功能。将会更好地适应现代教育形势。
参考文献:
[1]夏强.Excel VBA应用开发与实例精讲[M].科学出版社,2006.
[2]王新耀.无纸化考试系统对计算机等级考试促进作用的分析[J].成都航空职业技术学院学,2006,3.
[3]陶永进,雷超阳.浅谈新型无纸化考试系统[J].长沙通信职业技术学院学报,2004,3(1).