欢迎来到天天文库
浏览记录
ID:38114635
大小:292.00 KB
页数:5页
时间:2019-05-26
《文档的自动评阅系统中》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、关于Excel文档的自动评阅系统中若干问题的研究①毛志侠谢深泉湘潭大学信息工程学院,湘潭,411105摘要在远程考试系统中,针对自动阅卷模块里EXCEL文档的表格数据位置具有不确定性,和EXCEL图表的复杂数据结构,我们利用VBA宏语言来识别文档和图片的格式,提出一种方型搜索算法对表格数据进行定位。通过对上述问题进行研究,实现对EXCEL操作题答案文档中的表格数据和图表进行快速定位和准确自动判读.关键词VBA宏语言,方形搜索算法,自动阅卷,远程考试系统1引言在湘潭大学计算机基础远程考试系统中,要求能实现对各种题型的自动阅卷,其中Excel操作题的评判是关键之一。由于Excel文
2、档结构特别,Microsoft公司又没有公布,以及Excel文档中表格数据难以定位,加之对Excel图表中数据结构目前尚不清楚,这些都给自动评判Excel操作题造成了一定的困难。我们在对计算机基础考试系统的研发工作中发现:通过VBA宏语言来寻找到Excel图表中对象的属性,利用方形搜索算法来对Excel表格中数据进行定位,完全可以解决上述间题.本文中将给出如何运用ActiveX技术和面向对象程序设计方法来实现EXCEL文档中表格数据的定位和图表的评判问题。2EXCEL文档格式的识别因为对EXCEL文档的内部结构和细节并不清楚,所以不能直接将ECXEL文档以文件流的格式在客户端和
3、远程数据库之间传送。但可以将试题和答案文档转换成网络二进制文件流的形式,传送到远程数据库的OLED对象中,在考生答题和教师阅卷时又以网络二进制流的形式传送到客户端。利用MicrosoftOffice中集成的VBA(VisualBasicforApplications)标准宏语言,对EXCEL文档进行访间,从而达到对EXCEL文档的格式进行识别和属性的访间。整个过程如图1所示。在图1的自动阅卷的模块中,通过VBA所提供的对EXCEL文档操作的各种接口,提取出EXCEL文档中各个对象的属性。通过对考生答案文档中各对象的属性和标准答案文档中各对象属性值的比较,实现对两个不同的EXCE
4、L文档中结构和格式进行评判。从而得到对①项目资助:湘潭大学第四批教改项目图1关于EXCEL从出题、答题、阅卷的网络数据流图EXCEL阅卷的正确评分.下面通过例1来熟悉整个流程:首先,利用ActiveX控件对象对远程数据库中EXCEL文件进行读取,而后通过VBA宏语言从读取出的文件中得到其结构和格式,并存储在二维数组中等待评判.例1:把EXCEL工作表SHEET1中:(1,1)到(10,10)区域的内容复制到二维数组中。(1)创建对使用对象的引用。以VB为例,在编程之前,需要先设置VB的References属性。由于要对EXCEL的对象和属性进行操作,References选项中应
5、增加EXCEL的对象库MicrosoftEXCEL9.0ObjectLibrary,在程序编制的过程中就可引用EXCEL对象及属性,并向对象使用相应的方法[E]。同时,为加速对象的引用和优化应用程序,对象引用最好采用事前绑定[3]0DimTest-ConAsADODB.Connection‘声明远程数据库连接DimTest-RecordAsADODB.Recordset‘声明远程数据记录集DimEXCELAppAsExcel.Application’声明变量为EXCEL应用对象DimEXCELWorkbookAsExcel.WorkbookDimEXCELSheetAsExce
6、l.WorksheetSetEXCELApp二NewExcel.Application’对变量进行初始化SetEXCELSheet=EXCELApp.Sheets.AddDimArry-Excel(10,10)’定义存储EXCEL数据的二唯数组(2)用对象的方法、属性与事件编写代码,识别和控制EXCEL文档的内容、格式。SetEXCELApp二GetObject(,"Excel.Application")’查找正在运行的Excel拷贝SetEXCELWorkbook二EXCELApp.Workbooks.Open("EXCEL1.XSL")ForEachEXCELSheetIn
7、EXCELWorkbook.Sheets’查看EXCEL文档中每个工作表IfEXCELSheet.Name二”Sheetl"Then’循环输出Sheetl工作表的内容ForI二1to10FORJ二1to10Arry-Excel(I-1,J-1)=EXCELSheet.Cells(I,J)’单元格内容的存储NEXTJNEXTIENDIFNEXT(3)使用完毕后,释放对象SetsetNothing’释放对象setEXCELWorkbook=NothingEXCELSheet二Nothing3利用
此文档下载收益归作者所有