劉太甫,戶曉艷
(黃岡職業(yè)技術(shù)學(xué)院,湖北黃岡438002)
高職院校學(xué)生管理工作錯綜復(fù)雜,這是眾所周知的。作為管理者,在日常工作中常常需要利用Excel處理龐大的數(shù)據(jù),如對各種數(shù)據(jù)進行整理、分析、統(tǒng)計、匯總等,若不小心而弄錯一個地方,還得從頭再來。學(xué)生管理綜合測評,是每所高校、每一學(xué)期都要進行的。很多決策者和管理者習(xí)慣使用Excel對學(xué)生測評情況進行管理。因是基于手工處理,所以存在工作量大、出錯率高、保密性差、查找麻煩、檢索緩慢等弊端。再加上時間一長,將會產(chǎn)生大量的文件和數(shù)據(jù)。這對查找、更新和維護帶來不少困難,更不能準確地反映學(xué)生的綜合素質(zhì),影響學(xué)生管理的效率。當(dāng)然,高校可以購買完整的軟件,但它的經(jīng)費、功能、后期開發(fā)等各種問題,難以實現(xiàn)資源的有效利用。所以,筆者認為,為了能更好地利用Excel使各種數(shù)據(jù)一目了然,并能開發(fā)高效、安全、數(shù)據(jù)共享的信息化平臺,設(shè)計出穩(wěn)定、全面、有效而操作又簡便的學(xué)生管理測評卡,則顯得尤為重要。
Excel中除了函數(shù)外,還有一種宏語言VBA(VisualBasic for Aopplication)。它是MOS office軟件內(nèi)置的編程語言,具有功能強大、面向?qū)ο蟆⑹褂煤唵?、開發(fā)效率高的特點[1],為廣大用戶提供一個新的、更高層次的二次平臺。通過宏語言編程技術(shù),使各種數(shù)據(jù)進行規(guī)范管理、科學(xué)統(tǒng)計和快速查詢。只需輕點鼠標(biāo),就能完成一整天甚至數(shù)天都難以完成的任務(wù),從而讓管理者從繁瑣、重復(fù)、費時費工的辦公事務(wù)中解脫出來,提高學(xué)生管理工作的效率和準確性。
根據(jù)學(xué)生管理測評的具體情況,擬定設(shè)計原則、目標(biāo)、思路、功能劃分方案。
學(xué)生管理測評卡的開發(fā),其目的是使學(xué)生管理工作進一步規(guī)范化、制度化和程序化。結(jié)合綜合測評的要求,遵循的設(shè)計原則有:①開放式結(jié)構(gòu)。②由不同層次的多模塊的子系統(tǒng)構(gòu)成。③可操作性強,并有一定的改進和更新功能,便于數(shù)據(jù)交流和信息共享,以適應(yīng)將來的需求。④能夠為用戶提供充足的信息、快捷的查詢和方便的計算,以滿足實用性、可靠性和規(guī)范性。
為了充分保證學(xué)生綜合測評結(jié)果的準確性、真實性,并能有效地對學(xué)生綜合素質(zhì),進行科學(xué)測評和管理分析,快速、方便地實現(xiàn)學(xué)生測評的錄入、查詢、檢索、瀏覽、添加、刪除等功能。這是設(shè)計的總體目標(biāo),并且要求管理者能通過測評的項目,實現(xiàn)本項目的動態(tài)性和自適應(yīng)性。
①制作學(xué)生管理測評卡,根據(jù)高校的辦學(xué)方針、學(xué)生的專業(yè)特征,結(jié)合Excel VBA的功能,首先設(shè)計數(shù)據(jù)庫。數(shù)據(jù)庫是建立基本的數(shù)據(jù)信息,是對于一個給定的應(yīng)用環(huán)境,構(gòu)造最優(yōu)的數(shù)據(jù)模式,使其能夠有效地存儲數(shù)據(jù)記錄,并能滿足各種應(yīng)用需求[2]。②設(shè)計用戶界面,對用戶而言,界面的可用性和友好程度,直接影響著他們的情緒、檢索效率等等。因此,設(shè)計出界限分明、路徑明確、跳轉(zhuǎn)方便、建立切實有效的幫助系統(tǒng)是很關(guān)鍵的。③程序代碼編寫,使用VBA編程的主要工作是事件驅(qū)動。設(shè)計消息響應(yīng)的子程序:即設(shè)計當(dāng)某對象發(fā)生某個事件(如:被單擊)時所做出的響應(yīng)。這種響應(yīng)又稱為事件過程。在事件過程中,編寫代碼來改變對象的屬性或調(diào)用對象的某個方法,從而達到消息響應(yīng)的目的[3]。
學(xué)生管理測評卡的主要功能模塊包括三個方面:
(1)系統(tǒng)設(shè)置模塊:主要對系統(tǒng)需要的基本數(shù)據(jù)進行錄入、修改。
(2)綜合測評模塊:以設(shè)置的基本數(shù)據(jù)為基礎(chǔ),主要完成學(xué)生各項目的測評,對已經(jīng)通過的項目進行測評計算。
(3)查詢模塊:能夠查詢到所有學(xué)生的基本情況,如班級考勤、學(xué)生基本信息,測評結(jié)果(如圖1)。
圖1 學(xué)生管理測評卡功能劃分方案
設(shè)計學(xué)生管理測評卡,利用VBA技術(shù),借助數(shù)據(jù)庫、代碼的設(shè)計來實現(xiàn)。
主要使用存取數(shù)據(jù)源的COM組件ADO(ActiveX data obiects)來方便地對數(shù)據(jù)庫內(nèi)容進行調(diào)取,采用VBA實現(xiàn)學(xué)生管理測評卡的頁面功能設(shè)計,通過執(zhí)行SQL命令,進行數(shù)據(jù)的錄入、修改、刪除、查詢、統(tǒng)計、瀏覽等常規(guī)的數(shù)據(jù)庫操作。
學(xué)生管理測評卡分別建立獨立的管理信息數(shù)據(jù)庫,數(shù)據(jù)庫中包含各種基礎(chǔ)信息數(shù)據(jù)表,各數(shù)據(jù)表間建立相應(yīng)的關(guān)聯(lián),如圖2所示。
圖2 數(shù)據(jù)庫設(shè)計示意圖
由于篇幅有限,筆者簡單介紹學(xué)生管理測評卡中利用VBA編寫的部分代碼設(shè)計。
1.登錄代碼
Private Sub CommandButton1_click()
loginsucceeded=False
Me.Hide
End Sub
Private Sub CommandButton2_Click()
If TextBox1="hxy"And TextBox2="123456"Then
loginsucceeded=True
Me.Hide
UserForm2.Show
Else
MsgBox"密碼不正確,請重試",,"登錄"
End If
End Sub
2.基本信息輸入代碼
Private Sub CommandButton1_click()
xskq1.recordset.movefirst
現(xiàn)代生態(tài)農(nóng)業(yè)研究所內(nèi),安徽科技學(xué)院科研處副處長張從宇和同事正分析農(nóng)作物生長數(shù)據(jù),“規(guī)?;?、標(biāo)準化、信息化是現(xiàn)代農(nóng)業(yè)發(fā)展的方向,希望依托小崗的品牌,利用現(xiàn)代農(nóng)業(yè)科技,推廣全新的農(nóng)業(yè)種養(yǎng)模式?!?/p>
do while not xskq1.recordset.eof
if lcase(xskq1.recordset.fields(0).value)=lcase(textbox1.text)then
textbox2.text=xskq1.recordset.fields(0).value
textbox3.text=xskq1.recordset.fields(1).value
textbox4.text=xskq1.recordset.fields(2).value
label5.caption="status:found......"
exit sub
xskq1.recordset.movenext
loop
textbox2.text=""
textbox3.text=""
textbox4.text=""
end sub
3.排名輸入代碼
Private Sub CommandButton1_click()
xszb2.recordset.movefirst
do while not xszb2.recordset.eof
if lcase(xszb2.recordset.fields(0).value)=lcase(textbox3.text)then
textbox1.text=xszb2.recordset.fields(0).value
textbox2.text=xszb 2.recordset.fields(1).value
ComboBox1=xszb 2.recordset.fields(2).value
labe20.caption="status:found......"
exit sub
end if
end sub
4.綜合測評瀏覽代碼
Private Sub CommandButton1_click()
zhcp1.recordset.delete
zhcp1.recordset.movenext
if zhcp1.recordset.eof then
zhcp1.recordset.moveprevious
end if
end sub
運行高校學(xué)生管理測評卡,以不同用戶登錄,當(dāng)密碼輸入正確后,進入主窗體,它包括基本信息、查詢記錄、綜合測評三個子窗體。根據(jù)用戶需求,點擊相應(yīng)信息。例如,可以點擊基本信息,進入學(xué)生基本信息情況,頁面效果如圖3所示。它可以對數(shù)據(jù)庫信息進行新增、刪除和修改,也可以通過查詢,查看學(xué)生記錄。
圖3 高校學(xué)生管理測評卡基本信息界面
利用Excel VBA的功能,依托存取數(shù)據(jù)庫源COM組件的ADO,按照高校學(xué)生管理模式進行設(shè)計,使系統(tǒng)具備很好的開放性和可擴展性,能夠高效地適應(yīng)學(xué)生管理不斷變化的需求,并充分體現(xiàn)VBA的優(yōu)勢。學(xué)生管理測評結(jié)果的準確性、可靠性和便捷性,是實現(xiàn)學(xué)生管理流程化、規(guī)范化和制度化的目標(biāo)?;赩BA界面的用戶端操作方便,查詢、統(tǒng)計、添加、刪除信息快捷,極大地提高學(xué)生管理工作效率。在利用Excel VBA設(shè)計學(xué)生管理測評卡時,要注意以下三個問題:
(1)編碼的統(tǒng)一性。在利用VBA設(shè)計代碼時,最好用電腦容易識別的數(shù)字符號、字母等代碼表示出來。這樣,更能促進系統(tǒng)內(nèi)部數(shù)據(jù)的規(guī)范化管理,加快處理速度,節(jié)省存貯空間。
(2)代碼的簡化性。最好讓代碼長度縮短,易讀易懂。當(dāng)編寫完一個程序后,運行結(jié)果是正確的,但程序運行得很慢,甚至有的程序等待幾分鐘后才運行出結(jié)果。這時就可以通過簡化代碼,提高程序的性能。比如:可以刪除程序中無關(guān)的代碼;可以將通用過程編寫的代碼改為用子過程來調(diào)用;可以將過程中的長對象用設(shè)置對象變量引用,以上都是簡化代碼的方法。
(3)代碼的保護性。由于測評卡使用對象是教師和學(xué)生干部,如果學(xué)生能輕易地調(diào)取Excel VBA代碼,掌握了驗證原理,那么就可能根據(jù)代碼原理修改數(shù)據(jù),則造成信息的不真實和不準確性。因此,需要保護VBA代碼,使其不能被查閱和篡改??梢允褂肰BA窗口菜單“工具”-“project屬性”-“保護”來保護VBA代碼。
[1]成必成,胡平建.高校學(xué)生工作中應(yīng)用Excel的三種境界[J].和田師范專科學(xué)校學(xué)報,2012,29(3):170.
[2]VBA 語言的特點[EB/OL].http://wenku.baidu.com/view/f28109659b6648d7c1c74657.html.
[3]朱思峰.使用VB快速開發(fā)數(shù)據(jù)庫應(yīng)用系統(tǒng)[J].現(xiàn)代電子技術(shù),2004,27(18).