劉樂紅



[摘要] 隨著信息技術的不斷普及,無紙化考試的優勢日益增顯,學生可在計算機上直接答題,教師自動獲取學生得分,從而大大提高了工作效率。本文主要討論如何巧用大眾化軟件Office實現大量選擇或填空題無紙化考試自動判卷。
[關鍵詞] Office; 宏命令; 自動判卷; Word; Excel; 分隔符
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2012 . 24. 058
[中圖分類號]TP391[文獻標識碼]A[文章編號]1673 - 0194(2012)24- 0098- 01
很多課程考試一般以大量的客觀題形式組織考試,繁重的閱卷既增加了老師的工作負荷,還難免出現一些誤批。事實上大家非常熟悉的Office軟件就能解決這一問題。教師收集試題一般用Word格式,而自動判卷利用Office的Excel功能。這就產生一個問題,如何將用Word格式的選擇題轉換為Excel格式。
1將Word格式的選擇題轉換為Excel格式
1.1設立分隔字符,將文檔保存為純文本文件
目的:將Word中每題題干和選項組成一段,題干與選項間、選項間設立分隔字符用于Excel中分列標志。具體如下。①去除各題中題干與選項間、選項與選項間空格串:利用“查找與替換”功能將選項間所有的空格標志符“^w”替換欄為空白,刪除選項間空格串。②設立分隔符(特殊符號且文中所沒有的,以“&”為例):將選項標識如A)、B)、C)、D)分別替換成&A)、&B)、&C)、&D),(替換次數應與題數一致,否則說明題中另含選項標識)作為選項間分隔符。③去除分隔符&前所有的段落標志符:“^p&”替換成“&”,使每題獨立成段,保存為“wst.txt”文件(如圖1)。
1.2將txt文件轉換為Excel文件
打開Excel空白文檔,點擊“文件→打開”命令,雙擊剛保存wst.txt文件,在“文本導入向導——3步驟1”對話框中選定“分隔符號”,單擊“下一步”,在“文本導入向導——3步驟2”對話框中選定分隔符號“其他”,并填入上一步中設定的分隔符“&”,查看預覽后,單擊“下一步”在“文本導入向導——3步驟3”對話框中查看預覽后單擊“完成”,就將.Txt文檔轉換成Excel文檔。此時轉換的數據格式還不是十分理想,還需要對Excel數據表格進行必要的單元格格式設置,并添加合適的列標題,同時增加“答案”列。答案序列生成方法:雙擊第一題答案單元格,單擊“數據→有效性”,在“數據有效性”對話框中“允許”下拉列表中選擇“序列”,同時將“來源”數據框中輸入“A,B,C,D”。單擊確定即可生成第一題的4個選項序列供考生選擇,利用Excel自動填充功能,完成每題的選擇序列。工作表命名為“shiti”,保存為“試題.xls”文件。效果如圖2。
2利用Excel自動判卷
2.1設置答案工作表文件
新建工作簿“答案.xls”,將sheet1工作表重命名為“daan”,將A、B、C、D四列第一單元格輸入“題號,標準答案,得分,總分”作為列標題。“題號”和“標準答案”兩列需錄入。“得分”列利用IF函數判斷標準答案單元格和“試題.xls”相應答案單元格是否相等,相等返回該題分值,不相等返回0分。例如:在得分單元格B2中輸入“=IF(B2=E:\論文\ [試題.xls]shiti!F2,3,0)”(F2是考生答題單元格,3是該題分值),利用填充柄生成其余得分單元格公式。在“總分”列D2單元格中利用SUM函數求總分,如圖3。
2.2利用宏自動判卷
打開“試題.xls”,點擊“工具→宏→錄制宏”,在“錄制宏”對戶框中輸入宏名“zdpj”,并制訂快捷鍵Ctrl+z,單擊“確定”,開始錄制新宏。點擊“工具→宏→Visual Basic 編輯器”,打開“工程資源管理器”,插入“模塊”并編寫代碼如下:
Sub zdpanjuan()
Dim cj As Integer
mima = InputBox("請輸入密碼:")
If mima = "810108" Then
Set newbook = Workbooks.Open("E:\論文\答案.xls")
cj= newbook.Sheets("daan").Cells(2, 4)
zf= Str(cj)
newbook.Close SaveChanges:=True
Set newbook = Nothing
MsgBox "該考生成績為:" & zf
Else
MsgBox "請重輸密碼:"
End If
End Sub
關閉Visual Basic 編輯器,打開試題.xls文件,單擊“工具→宏→執行宏”,選定宏“zdpj”,單擊“確定”按鈕(也可以使用設定好的快捷鍵),輸入密碼后就能直接得出某考生成績。