高升宇
(渭南師范學(xué)院數(shù)學(xué)與信息科學(xué)學(xué)院,陜西渭南714000)
基于VBA技術(shù)的Office2003操作題自動(dòng)閱卷設(shè)計(jì)與實(shí)現(xiàn)
高升宇
(渭南師范學(xué)院數(shù)學(xué)與信息科學(xué)學(xué)院,陜西渭南714000)
針對計(jì)算機(jī)基礎(chǔ)教學(xué)中Office2003套件的操作題考核問題,應(yīng)用微軟Office2003套件中嵌入的VBA技術(shù),通過VBA編程實(shí)現(xiàn)對考生答案文檔中各種對象的屬性讀取與識(shí)別,并將其值與標(biāo)準(zhǔn)答案文檔中對象的屬性進(jìn)行比對,快速給出成績,達(dá)到提高教學(xué)工作效率的目的.
計(jì)算機(jī)基礎(chǔ)教學(xué);操作題;VBA;效率
在基于校園網(wǎng)的《大學(xué)計(jì)算機(jī)基礎(chǔ)》網(wǎng)絡(luò)教學(xué)環(huán)境中[1],除了提供豐富的教學(xué)內(nèi)容外,還必須提供較完善的在線考核機(jī)制.在線考試試題類型分為客觀題和主觀題兩大類,客觀題一般有單項(xiàng)選擇、多項(xiàng)選擇和計(jì)算題等,利用數(shù)據(jù)庫技術(shù)就可較方便地實(shí)現(xiàn)客觀題的自動(dòng)化閱卷;主觀題可分為簡答題和操作題兩種:對于簡答題的閱卷要用到專家系統(tǒng)、人工智能、語義分析等技術(shù)[2],不在本文討論范圍;對于操作題,由于微軟在Office2003套件中嵌入了VBA技術(shù),為其各種文檔的自動(dòng)化提供了強(qiáng)有力的支持,利用VBA進(jìn)行編程,通過對考生的操作結(jié)果文檔進(jìn)行識(shí)別即可達(dá)到自動(dòng)閱卷的目的.
操作題的閱卷首先是對操作結(jié)果文檔的識(shí)別,Office2003套件中對于文檔采用對象數(shù)據(jù)流的方式進(jìn)行存放,所以不能直接讀出文檔的細(xì)節(jié)及格式,但微軟在Office2003中嵌入了VBA(Visual Basic for Application),它是一種完全面向?qū)ο蟮臉?biāo)準(zhǔn)宏編程語言,其程序的運(yùn)行必須依賴于宿主的文檔環(huán)境,因此在VBA中提供了訪問Office2003文檔對象的接口,通過VBA程序可以控制、識(shí)別Office2003文檔中不同對象的結(jié)構(gòu)、內(nèi)容及格式[3].
VBA標(biāo)準(zhǔn)宏語言具有跨越多種應(yīng)用軟件并且控制應(yīng)用軟件對象的能力,具有很好的易用性.VBA的語法類似VB(Visual Basic),它提供了很多VB中沒有的函數(shù)和對象,這些函數(shù)、對象都是針對Office2003應(yīng)用的.Office2003的每個(gè)文檔都是由多個(gè)對象組成(本文以Word2003文檔為例進(jìn)行討論),如圖1所示的Word2003文檔模型結(jié)構(gòu).在Word中用戶操作的任何東西都是一個(gè)對象,每個(gè)對象都有它自己的屬性,而這些對象屬性的值決定了文檔的結(jié)構(gòu)和格式,通過讀取文檔中的各個(gè)對象的屬性值,即可判定用戶操作的結(jié)果準(zhǔn)確與否.
在圖1所示的Word文檔對象模型中,Application表示W(wǎng)ord應(yīng)用程序,Documents屬性表示所有Document對象(一個(gè)Document對象對應(yīng)一個(gè)Word文檔)的集合,Paragraphs屬性表示文檔中所有Paragraph對象(每個(gè)Paragraph對象代表一個(gè)段落)的集合,Shapes屬性表示文檔中所有Shape對象(每個(gè)Shape代表一個(gè)圖片)的集合,Tables屬性表示文檔中所有Table對象(每個(gè)Table代表一個(gè)表格)的集合,Range對象表示引用文檔中一段連續(xù)的文本部分,Selections屬性表示在文檔中Selection對象(Selection表示當(dāng)前已選擇的區(qū)域)的集合,另外還有書簽Bookmark對象、子文檔Subdocument對象等等[4-5],所有對象均可以通過VBA程序?qū)崿F(xiàn)訪問.
圖1 Word2003文檔對象模型及其關(guān)系
Word操作題一般涉及的操作內(nèi)容主要有字體設(shè)置、段落格式排版、表格制作、圖片設(shè)置等一系列操作,其操作結(jié)果以Word文檔(.doc)形式存在.現(xiàn)有下列圖2所示的Word機(jī)試操作題,其題目要求主要有:(1)標(biāo)題居中、字體設(shè)置為黑體、字體大小設(shè)置為四號(hào),3分;(2)正文第一段首字下沉3行、字體設(shè)置為華文行楷,2分;(3)“物華天寶、人杰地靈”字體設(shè)置為仿宋_GB2312、加下劃線(線型為單線),3分;(4)“經(jīng)世致用、和而不同”字體設(shè)置為宋體、加粗、位置提升3磅,3分;(5)“天天奮斗、天天快樂”字體設(shè)置為楷體、加粗、文字加底紋(15%),3分;(6)表格為2行5列,表格中的數(shù)字字體設(shè)置為Arial Rounded MT Bold、每個(gè)單元格數(shù)據(jù)居中,2分;(7)圖片四周環(huán)繞,2分.本題省略對頁面設(shè)置、段落縮進(jìn)、段前段后間距、行距、字體顏色、圖片尺寸及圖片類型等文檔對象屬性的識(shí)別.
圖2 Word題目樣式
閱卷程序的部分代碼如下:
針對圖2所示的Word操作題要求,通過使用上述代碼實(shí)現(xiàn)了自動(dòng)閱卷,提高了計(jì)算機(jī)基礎(chǔ)教學(xué)中上機(jī)實(shí)驗(yàn)考核的工作效率,摒棄了以前對操作題采用人工閱卷的方式,也消除了人工閱卷的人為因素,使考核評價(jià)進(jìn)一步客觀、公平、合理.用上述思路和技術(shù)也可實(shí)現(xiàn)對Excel、PowerPoint和Access等操作題的自動(dòng)化閱卷.
[1]高升宇,付霞,雷建平.渭南師范學(xué)院網(wǎng)絡(luò)教學(xué)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].渭南師范學(xué)院學(xué)報(bào),2006,(5):37-38.
[2]張小艷.基于自然語言的主觀題自動(dòng)閱卷技術(shù)[J].西北大學(xué)學(xué)報(bào)(自然科學(xué)網(wǎng)絡(luò)版),2005,(8):1-2.
[3]朱江,謝深泉.考試系統(tǒng)中Word操作題自動(dòng)閱卷的實(shí)現(xiàn)[J].湘潭大學(xué)自然科學(xué)學(xué)報(bào),2002,(9):49-50.
[4]閆薇,尹心平.VBA技術(shù)在計(jì)算機(jī)基礎(chǔ)考試系統(tǒng)設(shè)計(jì)中的應(yīng)用[J].齊齊哈爾大學(xué)學(xué)報(bào),2006,(5):59-61.
[5]邢薇,王鑫,王艷,等.考試系統(tǒng)中WORD文檔的圖片類對象自動(dòng)閱卷的實(shí)現(xiàn)[J].信息技術(shù),2008,(1):65-68.
Design and Implementation of Automatic Office2003 Operation Scoring Based on VBA Technology
GAO Sheng-yu
(School of Mathematics and Information Science,Weinan Teachers University,Weinan 714000,China)
VBA technology embedded in the Microsoft Office2003 suite is applied for the assessment on the operation questions of the Office2003 suite during the computer basic education.By VBA programming,the attributes of the examinees’answer files are read and recognized,and then the attributes are to be contrasted with the ones of the standard answers to get the final scores with high teaching and working efficiency.
computer basic teaching;operation questions;VBA;efficiency
TP317.1
A
1009—5128(2011)12—0064—04
2011—05—26
渭南師范學(xué)院精品課程《大學(xué)計(jì)算機(jī)基礎(chǔ)》
高升宇(1954—),男,陜西眉縣人,渭南師范學(xué)院數(shù)學(xué)與信息科學(xué)學(xué)院高級(jí)工程師.研究方向:管理信息系統(tǒng)研發(fā)、自然語言理解及其應(yīng)用.
[責(zé)任編輯 馬小俠]