陳辰星
摘 要 高校學生工作管理水平關系到學生培養(yǎng)質量的高低,通過技術手段可有效提高工作效率。針對高校學生工作管理過程中信息來源眾多且沒有有效整合的現狀,設計學生信息匯總和個人信息表模板,并通過Excel VBA編程技術,開發(fā)學生個人信息表系統,方便高校輔導員獲取學生個人信息表,實現學生工作的精準化管理。
關鍵詞 學生工作 信息匯總 Excel VBA 個人信息表 精準化
0 引言
學生工作管理是高校工作中的重要環(huán)節(jié),輔導員作為第一線接觸學生的高校工作人員,在學生立德樹人的培養(yǎng)過程中發(fā)揮著重要作用。在日常工作中,輔導員面對數量眾多的學生,有學生個人基本信息、獎懲助貸等事務信息以及重點關注情況等多方面信息源,但這些信息大多沒有整合,分頭查詢會影響工作效率。
在傳統學生管理工作中,輔導員利用Excel進行信息整理工作,往往把兩者孤立起來,而忽略了其內在聯系。[1]本文針對上述情況,在工作人員熟悉的Office軟件中,利用VBA編程進行二次開發(fā),將繁瑣的重復性工作轉為自動化實現,以其快速、簡便、準確的效果來提高學生工作的效率,實現學生的精準化管理。
1 開發(fā)工具介紹
VBA(Visual Basic For Application)是微軟在其桌面應用程序中執(zhí)行自動化任務而開發(fā)出來的新一代標準宏語言,[2]主要用來擴展Windows的應用,它可以實現包括自動化完成重復的任務,自定義Excel界面、創(chuàng)建報表、復雜數據處理和分析等。能與Word、Access等軟件完美融合,進行拓展應用的程序和交互開發(fā)。
2 系統設計與開發(fā)
2.1 需求功能分析
本系統主要使用對象是高校輔導員或其他相關工作人員,需要實現信息匯總查詢功能、個人信息表生成和學生照片導入等功能。根據需求,個人信息表系各模塊如圖1所示。
2.2 信息匯總表模板設計
本系統所有信息查詢、信息表生成和照片導入等操作依靠Excel電子表格完成,相當于把該電子表當作一個數據庫,因此本系統利用Excel設計信息匯總表模板,供用戶進行后續(xù)各項操作。為全面反映學生在校期間的情況,具體的工作表和列字段如表1。
2.3 個人信息表模板設計
本系統要用到Excel和Word的交互編程,為方便使用者在實際使用過程中,能單獨建立每個人的信息檔案,需要將匯總表的個人匯總信息分發(fā)到每張個人信息表中。個人信息表模板由Word制作,根據表1的內容進行設計,并命名為學生個人信息表(模板).doc,信息表模板存放在系統同一路徑。
2.4 個人照片庫設計
在系統存儲路徑下建立學生照片庫文件夾,統一以學生學號進行編號存儲,系統將根據學號自動識別、匹配并導入。
2.5 系統開發(fā)
系統開發(fā)過程主要完成系統初始化、Word交互、數據分發(fā)、照片導入及標準化操作和程序錯誤管理幾方面主要工作,開發(fā)過程及部分代碼如下。
(1)系統初始化。系統需要根據實際的匯總信息,判斷需要生成信息表的數量,同時完成相關操作的變量設置,對所有數據進行標準化處理,統一格式,防止在操作過程中因為數據的格式不統一而影響系統工作。其主要代碼如下所示:
Dim Word對象 As New Word.Application
‘設置Word對象,進行交互編程
Dim 當前路徑,導出文件名,導出路徑文件名,圖片文件
Dim Str1, Str2, Str3
‘定義及初始化相關變量
……
Sheets1.Range("A3:A"&最后行號).NumberFormatLocal = "G/通用格式"
‘統一數據格式,保證系統正常工作
(2)Word交互編程。系統要將Excel匯總表的信息分發(fā)到每張個人信息表中,需要打開Word應用,并將操作過程隱藏在后臺完成,其實現過程如下:
FileCopy 當前路徑 & "\學生個人信息表(模板).doc", 當前路徑 & "\" & 導出文件名 & "(" & Sheets("基本信息").Range("C" & i) & Sheets("基本信息").Range("B" & i) & ").doc"
導出路徑文件名 = 當前路徑 & "\" & 導出文件名 & "(" & Sheets("基本信息").Range("C" & i) & Sheets("基本信息").Range("B" & i) & ").doc"
‘通過模板生成個人信息表
With Word對象
Y孌ocuments.Open 導出路徑文件名
Y孷isible = False
‘打開Word應用,并使其實現過程隱藏不可見
(3)數據分發(fā)操作。將信息匯總表的信息分別填充到個人信息表中的每個空格中,主要利用循環(huán)等語句,實現批量操作,提升工作效率。其部分代碼如下:
For j = 1 To 6
Y孉ctiveDocument.Tables(1).Cell(j + 1, 2).Range = Sheets("基本信息").Cells(i, 2 * j - 1)
Y孉ctiveDocument.Tables(1).Cell(j + 1, 4).Range = Sheets("基本信息").Cells(i, 2 * j)
Next j
‘通過循環(huán)操作填寫表格數據
(4)照片導入操作。在個人信息表照片所在單元格設置操作位點,進行照片導入時,系統先將光標定位到相關位點,再讀取照片信息。判斷是否能查詢到照片,如果能則進行下一步導入及標準化操作;如果查詢失敗,則跳過照片導入,以防止程序報錯影響系統工作。
Y孲election.HomeKey unit:=wdStory
‘將系統光標移動到指定位點
圖片文件 = Dir(當前路徑 & "\pic" & "\" & Sheets("基本信息").Range("B" & i) & "*" & ".*")
‘查詢符合條件的照片文件
If .Selection.Find.Execute(Str3) Then
If 圖片文件 <> "" Then
Set mypic = .Selection.InlineShapes.AddPicture(Filename:=當前路徑 & "\pic" & "\" & 圖片文件)
‘如果查詢到照片,則將照片插入到word表中指定位點
mypic.Width = 72
mypic.Height = 108
End If
End If
‘對圖片大小進行標準化操作,結束照片導入過程
(5)系統錯誤管理。系統在工作過程中有時會出現系統報錯,為保護系統,設置系統人機交互界面,提醒用戶系統工作是否正常。
If 判斷 = 0 Then
i = MsgBox("已輸出到 Word 文件!", 0 + 48 + 256 + 0, "提示:")
End If
Exit Sub
errorline:
MsgBox ("程序出錯,請檢查!")
Set Word對象 = Nothing
3 展望和拓展
將VBA程序融入學生管理工作的Excel電子表格中,有效地提升了學生管理工作的效率并增加了系統自動化執(zhí)行的能力。系統具有較好的可擴展性,同時分發(fā)生成每位同學的信息表,有利于輔導員掌握每位學生的具體情況,進行信息化的精準教育,將一人一檔落到實處,其中包括學生日常行為信息、學業(yè)數據、獎勤助補貸等情況,及時更新,便于分析研究,制定對策。[3]
目前系統仍存在包括數據安全、數據冗余等問題,在今后工作中可以對系統設置系統保護以加強安全性,精簡冗余代碼以提高系統執(zhí)行效率。
參考文獻
[1] 顏杰群,林麗蓉.基于Excel VBA的高校學生管理系統開發(fā)[J].寧波教育學院學報,2015.17(4):83-87.
[2] 張永成,王洪輝,譚桂花.基于Excel VBA的圖解粒度參數計算[J].成都理工大學學報(自然科學版),2010(6):650-653.
[3] 魏飛,王平,韓菡等.個性培養(yǎng)視角下高校學生精準化管理模式探析[J].學理論,2017(1).