毛戰(zhàn)軍
(長江大學一年級教學工作部,湖北 荊州434023)
在《高等數(shù)學》課程補考和重修考試結(jié)束后,都會把參加考試的學生的成績按每個班級分類制作成紙質(zhì)成績單送交班級所屬學院教學辦存檔。一般情況下,在閱卷完畢后,閱卷教師都會根據(jù)閱卷結(jié)果將學生成績制作成電子格式的成績總表(見圖1),再按分班成績單模板的要求,制作統(tǒng)一格式的分班成績單(見圖2)。以2014年9月《高等數(shù)學A(下)》(理工類)東校區(qū)考區(qū)為例,就有6個學院的66個班級,共計422名學生參加補考,在向各學院送交分班成績單時,就需要制作66個班的分班成績單。閱卷教師按分班成績單模板要求填寫分班成績單的工作程序倒是很簡單,先根據(jù)閱卷結(jié)果制作閱卷成績總表,再將總表中的信息按要求拷貝粘貼到分班成績單模板相應的欄目中,然后將制作完畢的分班成績單保存在指定的文件夾中,在審核無誤后打印成紙質(zhì)成績單。如果只依靠手工操作,則操作動作頻繁、工作量大、錯誤率高、經(jīng)常需要返工,使得制作分班成績單成為《高等數(shù)學》補考和重修閱卷中的一個雖然簡單但非常繁瑣的工作。為解決該問題,特使用VBA語言針對分班成績單的制作需求編寫VBA程序,實現(xiàn)了在閱卷成績總表中自動判斷并讀取同一班級學生的成績信息,在分班成績單模板中自動填寫相應欄目,將填寫完畢的分班成績單自動保存在指定的文件夾中,使這一工作能高效、精確地完成。
圖1 閱卷成績總表
圖2 分班成績單模板
制作分班成績單的主要過程是從已經(jīng)制作的閱卷成績總表中讀取信息,以班級為單位在分班成績單模板中填寫以下的信息:系部名稱、班級名稱、閱卷教師名稱、參加考試的學生的學號、姓名、補考成績、備注(緩考、缺考等)。
程序的主要流程如下:①判斷并選擇同一班級學生;②按分班成績單模板要求填寫相應欄目信息;③按班級保存分班成績單。
1)前期準備工作 閱卷教師按閱卷結(jié)果制作閱卷成績總表,將閱卷成績總表中的所有欄目信息填寫完整,并將閱卷成績總表數(shù)據(jù)按班級名稱排序。
2)利用循環(huán)語句逐一對信息判斷 學生的信息在閱卷成績總表的第3行到第424行。
3)判斷是否是同一班級學生 設定某班級學生人數(shù)m=1,然后比較閱卷成績總表中b列“班級名稱”第n行數(shù)據(jù)是否與b列第n+1行數(shù)據(jù)相同。若相同,即為同一班級學生,該班級學生人數(shù)m+1;若不相同,則該班人數(shù)m不變,記錄同一班級學生信息在閱卷成績總表中所在行的情況。通過讀取閱卷成績總表中的信息,就可以在分班成績單模板中按要求填寫各欄目信息。
4)填寫信息 在閱卷成績總表中逐一讀取已判斷為同一班級學生的成績信息并寫入在分班成績單模板相應的欄目中:
Sheets(3).Range(“a”&3).Value=Sheets(2).Range(“l(fā)”&n).Value & “(系、部)”&Sheets(2).Range(“b”&n).Value & “班 課程高等數(shù)學A(下)學分6”
’將閱卷成績總表中的l列“學生院系”名稱、b列“班級名稱”按要求組成一個字符串填入分班成績單模板的“a3”單元格中。
’根據(jù)記錄的該班學生信息在閱卷成績總表所處行的情況,在分班成績單模板的第6行到第23行的a、b、c、d、e、f、g、h列中按要求填寫該班學生的成績信息
5)保存分班成績單 在分班成績單模板中將同一個班級學生的成績信息填寫完畢之后。為了便于審核和修改,將分班成績單模板按班級取名并保存在 “D:\11\”文件夾中:
6)將分班成績單模板復原 將分班成績單模板保存為班級成績單后,需要將已經(jīng)填寫的信息刪除,便于再填入下一個班級的成績:
’將分班成績單模板的第6行到第23行的a、b、c、d、e、f、g、h列信息清除。
該程序在winxp+office2003的工作環(huán)境下通過,實現(xiàn)了2014年9月的這次高等數(shù)學A(下)(理工類)補考東校區(qū)考區(qū)學生成績從閱卷成績總表到各班分班成績單的自動生成(見圖3)。經(jīng)過審核無誤后,進入到打印審批過程,較好地解決了這一問題。該方法可以移植到與高等數(shù)學A(下)(理工類)相類似課程成績處理的同一環(huán)節(jié)中,可以根據(jù)具體要求,對程序的人機對話界面進行優(yōu)化,增加一些自動判斷過程,就可更好地完成工作。
圖3 分班成績單
[1]Wal kenbach J.中文版Excel 2007高級vba編程寶典 [M].馮飛,焦瑜凈 譯.北京:清華大學出版社,2009:146-157.
[2]Wal kenbach J.中文版excel 2003寶典 [M].陳緬,裕鵬等 譯.北京:電子工業(yè)出版社,2004:439.