【摘要】自动阅卷技术是大规模计算机考试的必然选择,本文针对《计算机文化基础》课程
中的 Office 操作题中的 Word 部分进行了剖析,并研究了 VBA 技术实现在 Office 操作题自动
阅卷中的功能。
【关键词】计算机文化基础考试系统 Office 操作题 自动阅卷技术
《计算机文化基础》是山东省高校开设的一门公共基础课程,其内容主要是计算机基础
知识和 Office 办公软件的使用。根据教学实际的需要,为帮助学生备考和适应考试环境并协
助教师教学,我们自主开发了一个计算机文化基础考试系统,以达到强化训练、提高考试通
过率的目的。
该系统中的 Office 操作题包括了 Word、Excel 和 PowerPoint 操作题。一直以来,Office
操作题的自动阅卷就是一项技术难点。本文以 Word2003 为例,针对考试中的一些实际操作
进行研究,利用 VBA 编程,实现对按要求制作的文档进行检测评分,从而全面解决了 Office
操作题自动阅卷问题。
一、技术分析
VBA(Visual Basic for Applications)是新一代宏语言,在大多数办公软件中都嵌有这种宏语
言。与传统宏语言的不同是,VBA 是基于 Visual Basic For Windows 发展而来的,它提供了面
向 对 象 的 程 序 设 计 方 法 , 并 引 入 了 事 件 驱 动 机 制 。 VBA 具 有 直 接 运 用 相 关 软 件 ( 如
Word,Excel,PowerPoint,Au2toCAD 等)的强大功能,支持程序的开发应用。
VBA 宏语言的应用主要有两个方面:一是可以使用宏记录器记录用户的各种操作并将其
转换为 VBA 程序代码,使工作自动化;二是在其他程序开发中,通过对象引用调用宏模块,
增加程序的功能。VBA 提供了访问 Office 文档的接口,包含有大量针对该类文档的函数和对
象,使用 VBA 编程可以对文档中各对象的属性和状态进行识别和读取,并与试题标准。利用
VBA 实现自动阅卷,关键是获取文档的结构特性,通过录制宏来获取文档中相应对象的属性,
然后在 VBA 中编程对当前文档进行阅卷评分。由于 VBA 无法脱离 Word 应用程序环境,加
之与 VB 有很好的兼容性,故可以采用 VB 作为设计工具,将 VBA 阅卷程序平滑地移植到
VB 中。
二、Word 操作题的自动阅卷技术的实现
图 1 Word 对象模型抽象图
1.Word 对象模型概述
一个 Word 文档包含一个主数据流、摘要信息、表数据流、非文本数据流、0 或多个包含
用于 OL E 对象嵌入的对象存储,除摘要外其他信息均以嵌入的方式存储。Word 对象模型,
如图 1 所示,其中 Application 对象表示 Word 应用程序,Document 对象表示引用的文档,
Range 对象表示引用文档中的某一连续区域,Selection 对象表示当前选择的区域,Bookmark
对象表示文档中同时具有起始位置和结束位置的连续区域,Paragraph 对象表示某一段落等。
2.Word 文档对象及属性
(1)字体格式设置。字体设置由 Font 对象获得,Font 对象的 Name、Size、Color 属性分别
表示段落中文字的字体、字号和颜色,Bold、Italic、Underline 属性分别表示段落中文字是否
为粗体、斜体和有下划线。
(2) 段 落 格 式 设 置 。 段 落 设 置 由 Paragraph 对 象 获 得 。 Paragraph 对 象 的
LeftIndent、RightIndent 属性分别表示段落的左、右缩进,SpaceBefore、SpaceAfter 属性分别