摘 要:利用Office提供的VBA功能,實(shí)現(xiàn)Office操作題的自動(dòng)評(píng)價(jià)及評(píng)分。
關(guān)鍵詞:自動(dòng)評(píng)價(jià);VBA;宏;Word
可以利用VBA技術(shù)編寫程序代碼,讓系統(tǒng)自己能夠及時(shí)自動(dòng)地對(duì)學(xué)生的操作題進(jìn)行評(píng)價(jià),指出錯(cuò)誤原因,解決信息技術(shù)教師在實(shí)際教學(xué)中對(duì)學(xué)生操作出現(xiàn)問題時(shí)的反饋跟蹤難題。以此來提高課堂教學(xué)的有效性,提高學(xué)生對(duì)學(xué)習(xí)的積極性。
1 技術(shù)基礎(chǔ)
在Microsoft Office中集成有VBA(Visual Basic for Applications)標(biāo)準(zhǔn)宏語言,它是基于Visual Basic發(fā)展而來的,提供了相當(dāng)完整的程序設(shè)計(jì)語言。VBA提供了訪問Office 文檔的接口,包含有大量針對(duì)該類文檔的函數(shù)和對(duì)象。在WORD文檔VBA編程中,最經(jīng)常用到的對(duì)象就是以下幾個(gè):段落設(shè)置由Paragraph對(duì)象獲得。比如Paragraph對(duì)象的FirstLine Indent屬性表示段落首行縮進(jìn)。字體設(shè)置信息由Font對(duì)象獲得,比如Font對(duì)象的Name 、Size 、Color屬性分別表示段落中文字的字體、字號(hào)和字的顏色。利用VBA編程可以對(duì)Office文檔中各對(duì)象(比如段落、字體等)的屬性和狀態(tài)進(jìn)行識(shí)別和讀取,并與事先規(guī)定的操作要求進(jìn)行對(duì)比判斷后自動(dòng)評(píng)分。在使用VBA編程之前,你應(yīng)該對(duì)宏、VBA、面向?qū)ο?、方法、屬性等概念有所了解,作為一名?jì)算機(jī)教師來說,這些應(yīng)該是不困難的。要想詳細(xì)了解VBA中的層次結(jié)構(gòu)以及各個(gè)對(duì)象的基本屬性,可從網(wǎng)上下載Office_vba編程手冊(cè)合集(CHM).rar。
2 對(duì)Word文檔的自動(dòng)評(píng)價(jià)及評(píng)分
接下來以一個(gè)Word操作練習(xí)為例,展示利用簡(jiǎn)單的IF-then判斷語句寫出的VBA程序代碼來實(shí)現(xiàn)對(duì)WORD文檔操作結(jié)果的自動(dòng)評(píng)分與評(píng)價(jià)。練習(xí)素材共有6個(gè)操作要求,每個(gè)操作要求都有相應(yīng)的分?jǐn)?shù),此練習(xí)共20分。
例如操作1:設(shè)置文章標(biāo)題字體為仿宋(1分)、三號(hào)(1分)、加粗(1分),對(duì)齊方式為居中對(duì)齊(1分);
然后在練習(xí)素材的Word文檔的最后加入一個(gè)命令按鈕和標(biāo)簽控件,直接雙擊命令按鈕即進(jìn)入VBA編輯器當(dāng)中,寫入代碼,并對(duì)宏的安全性設(shè)置為低,以便能運(yùn)行VBA代碼。由于篇幅限制,本文只列出判斷操作1的代碼片段。
With ActiveDocument.Paragraphs(1).Range
If .Font.Name = \"仿宋\" Then
score = score + 1
Else
inform = inform + \"標(biāo)題字體設(shè)置錯(cuò)誤。\"
End If
If .Font.Size = 16 Then
score = score + 1
Else
inform = inform + \"標(biāo)題字體大小設(shè)置錯(cuò)誤。\"
End If
If .ParagraphFormat.Alignment = wdAlignParagraphCenter Then
score = score + 1
Else
inform = inform + \"標(biāo)題對(duì)齊方式設(shè)置錯(cuò)誤。\"
End If
If .Font.Bold = True Then
score = score + 1
Else
inform = inform + \"沒有加粗。\"
End If
End With
If score = 4 Then inform = inform + \"正確。\"
將此練習(xí)文檔與題目要求發(fā)給學(xué)生練習(xí),學(xué)生做完后點(diǎn)擊查看按鈕,即可即時(shí)查看到所做內(nèi)容的對(duì)錯(cuò)與得到的分?jǐn)?shù)。
這樣一來,哪里對(duì)哪里錯(cuò),一目了然,及時(shí)反饋。極大地方便學(xué)生的自主學(xué)習(xí),提高了教學(xué)效率。
如果覺得直接編寫以上這些VBA代碼顯得繁瑣與麻煩,也可以采用錄制宏的辦法來幫助減少編程的工作量。單擊菜單“工具→宏→錄制新宏”,然后教師按題目要求對(duì)文檔進(jìn)行正確的操作,操作完成后停止錄制。接著單擊菜單“工具→宏→宏”選擇剛才錄制的宏,對(duì)它進(jìn)行編輯查看。然后再對(duì)代碼作相應(yīng)的修改后(主要是用IF……THEN……進(jìn)行判斷)復(fù)制粘貼到“命令按鈕”中,這可以大大減輕教師的編寫VBA代碼的負(fù)擔(dān)。
3 結(jié)束語
本文僅以Word為例加以說明,實(shí)際上這種方法還適用于Excel、Powerpoint這二類Office文檔的自動(dòng)評(píng)價(jià)評(píng)分。只要認(rèn)真閱讀或查閱Office_vba編程手冊(cè)合集(CHM)就能知道Office各文檔的對(duì)象、方法、屬性,并加以利用,再適當(dāng)利用宏錄制功能,就能實(shí)現(xiàn)對(duì)于Office文檔的自動(dòng)評(píng)價(jià)評(píng)分,極大的提高學(xué)生自主學(xué)習(xí)積極性,及時(shí)反饋學(xué)習(xí)效果,也方便教師對(duì)于學(xué)生的練習(xí)作業(yè)的批改。
[參考文獻(xiàn)]
[1]李文江.利用VBA實(shí)現(xiàn)對(duì)Word文檔的自動(dòng)評(píng)分[J].重慶文理學(xué)院學(xué)報(bào),2007,26(2):73-77.
[2]廖恩揚(yáng).面向?qū)ο髮?duì)Office文檔操作自動(dòng)評(píng)分[J].計(jì)算機(jī)應(yīng)用,2002,22(8):119-120.