• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Excel VBA的多考場(chǎng)電子成績(jī)自動(dòng)統(tǒng)計(jì)

      2016-07-04 23:56:38陸嬌嬌
      電腦知識(shí)與技術(shù) 2016年15期

      陸嬌嬌

      摘要: 隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,高校本科課程考核方式的改革,諸多高校已從傳統(tǒng)的紙質(zhì)試卷考核轉(zhuǎn)為無(wú)紙化考核,減少了教師工作量,極大地提高了教師的工作效率。然而,若要對(duì)一門(mén)課程多考場(chǎng)的許多Excel表格中的成績(jī)進(jìn)行相關(guān)統(tǒng)計(jì),全靠人工手動(dòng)計(jì)算不僅耗時(shí)耗力,而且還容易出錯(cuò)。為此,利用Excel VBA方便、靈活、功能強(qiáng)大等特點(diǎn)實(shí)現(xiàn)多張表格成績(jī)的自動(dòng)整合與統(tǒng)計(jì),簡(jiǎn)化了教師的工作,提高了效率。

      關(guān)鍵詞:Excel VBA;電子成績(jī);自動(dòng)統(tǒng)計(jì)

      中圖分類號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)15-0218-02

      1 引言

      在高校日常教學(xué)中,課程考核占據(jù)十分重要的地位,是教學(xué)中必不可少的環(huán)節(jié),根據(jù)考核可以檢查課程制定的目標(biāo)是否實(shí)現(xiàn)了教育目的,可以準(zhǔn)確地判斷出學(xué)生掌握課程的程度,以方便課程教學(xué)設(shè)計(jì)的有效改進(jìn)[1]。鑒于傳統(tǒng)紙質(zhì)試卷考核的出卷、閱卷、統(tǒng)計(jì)分析成績(jī)工作量大等諸多不足,許多高校采用無(wú)紙化上機(jī)考核方式,全部計(jì)算機(jī)閱卷,減輕了教師的工作[2]。然而,對(duì)于像大學(xué)計(jì)算機(jī)這種全校性質(zhì)的公共課程的考核,因?yàn)槿藬?shù)較多,機(jī)房有限,機(jī)器數(shù)量有限,往往組織一場(chǎng)考試是不夠的,需要組織多場(chǎng)考試,而每一場(chǎng)考試后都會(huì)生成一份本次考試的電子成績(jī)。若想了解所有考生本次考試的情況,并對(duì)所有學(xué)生的各分?jǐn)?shù)段的人數(shù)進(jìn)行統(tǒng)計(jì)分析,需要將各個(gè)考場(chǎng)的數(shù)據(jù)進(jìn)行整合。如果Excel表格的數(shù)量不多,人工統(tǒng)計(jì)無(wú)妨;如果數(shù)量較多,完全手工統(tǒng)計(jì),不僅耗時(shí)耗力,而且易出錯(cuò)。

      為了解決上述問(wèn)題,將教師從繁重的手工勞動(dòng)中解放出來(lái),可采用Excel作為系統(tǒng)編寫(xiě)工具,Excel 自帶的系統(tǒng)開(kāi)發(fā)工具VBA(Visual Basic for Applicatio)方便、靈活、功能強(qiáng)大等特點(diǎn),可以直接對(duì)Excel對(duì)象進(jìn)行編程[3],實(shí)現(xiàn)多張電子表格成績(jī)的自動(dòng)整合,大大簡(jiǎn)化了教師的工作,提高了其工作效率。

      2 電子成績(jī)?cè)紨?shù)據(jù)收集

      2.1 原始數(shù)據(jù)收集

      由于各高校采用無(wú)紙化考核的工具不同,因此每一次考試產(chǎn)生的電子成績(jī)的文件類型也可能不同,可能是.txt,.xls/x或.doc/x等不同類型的文件。本文編寫(xiě)的程序只針對(duì).xlsx格式的文件,若考試成績(jī)的文件類型非.xlsx格式,需要將成績(jī)數(shù)據(jù)保存在.xlsx格式的文件中。

      2.2 數(shù)據(jù)預(yù)處理

      新建Excel工作表,將文件類型改為xlsb格式的文件,取名為“整合各表工具”。將各考場(chǎng)的excel成績(jī)表以及xlsb文件放到同一路徑下,xlsb格式的文件中會(huì)呈現(xiàn)具體的代碼。

      3 各考場(chǎng)成績(jī)的統(tǒng)計(jì)

      3.1 用VBA代碼實(shí)現(xiàn)各表的整合

      打開(kāi).xlsb格式的文件,按快捷鍵Alt+F11打開(kāi)編寫(xiě)代碼的環(huán)境,插入模塊,在模塊中編寫(xiě)代碼,具體代碼如下:

      Sub 整合各表()

      thispath = ThisWorkbook.Path'指當(dāng)前工作薄的路徑

      Dim SAKfile As String定義程序執(zhí)行時(shí)讀取當(dāng)前表的文件名

      SAKfile = Dir(thispath & "\*.xlsx")文件名獲取的方式是當(dāng)前路徑下.xlsx格式的文件名

      Do While SAKfile <> "" 判斷文件名不為空的時(shí)候執(zhí)行循環(huán)

      If SAKfile <> ThisWorkbook.Name Then

      Dim m As Long

      Set SAK = Workbooks.Open(thispath & "\" & SAKfile)順次打開(kāi)當(dāng)前路徑下.xlsx格式的文件

      Set SAKsheet = SAK.Worksheets(1)

      m = SAKsheet.Range("A1048576").End(xlUp).Row 該變量為打開(kāi)的表中最后一行的行數(shù)

      SBKtemp = ThisWorkbook.Worksheets(1).Range("A1048576").End(xlUp).Row 該變量為當(dāng)前寫(xiě)程序的工作薄的第一張工作表中最后一行的行數(shù)

      SAKsheet.Range("a2:d" & m).Copy ‘復(fù)制各考場(chǎng)的成績(jī)數(shù)據(jù)

      ThisWorkbook.Worksheets(1).Range("a" & (SBKtemp + 1) & ":d" & (SBKtemp + m - 1)).PasteSpecial (xlPasteValues) 粘貼到匯總表中

      Application.CutCopyMode = False ‘清空剪貼板中的數(shù)據(jù)

      ThisWorkbook.Saved = True ‘保存程序文件

      SAK.Close 關(guān)閉打開(kāi)的excel表

      End If

      SAKfile = Dir

      Loop

      End Sub

      代碼編寫(xiě)完之后,在代碼窗口按F5執(zhí)行程序,或點(diǎn)擊視圖→宏,執(zhí)行即可。

      3.2 統(tǒng)計(jì)各分?jǐn)?shù)段的人數(shù)

      根據(jù)上述整合數(shù)據(jù)的結(jié)果,可以使用Frequency()函數(shù)快速統(tǒng)計(jì)各分?jǐn)?shù)段的人數(shù)。首先確定各分?jǐn)?shù)段,然后確定間隔值(區(qū)間的上限),最后插入Frequency()函數(shù),選中結(jié)果區(qū)域,在編輯欄處按快捷鍵Ctrl+shift+enter。以某高校入學(xué)考試成績(jī)?yōu)闃颖?,統(tǒng)計(jì)結(jié)果如表1所示。

      4 結(jié)束語(yǔ)

      本文以無(wú)紙化考核軟件導(dǎo)出的Excel形式的成績(jī)表為例,采用Excel VBA實(shí)現(xiàn)對(duì)各個(gè)考場(chǎng)成績(jī)數(shù)據(jù)的整合,解決了教師手工整合各表的繁瑣問(wèn)題,極大地減輕了教師工作的負(fù)擔(dān),大大提高了教師的工作效率,基本取得了預(yù)期的效果。

      該程序雖然極大程度地減輕了教師的工作量,尤其對(duì)多數(shù)據(jù)表的自動(dòng)整合有很好的使用價(jià)值。但是仍有不足的地方需要改進(jìn),如前期數(shù)據(jù)的預(yù)處理能否用程序自動(dòng)實(shí)現(xiàn)文件類型的轉(zhuǎn)換,對(duì)于各分?jǐn)?shù)段人數(shù)的統(tǒng)計(jì),本文采用函數(shù)實(shí)現(xiàn),盡管也很方便,但是否可將該部分用程序?qū)崿F(xiàn),進(jìn)一步簡(jiǎn)化教師的工作,能否做出人性化的界面,這需要開(kāi)發(fā)人員進(jìn)一步研究VBA更深層次的用途。

      參考文獻(xiàn):

      [1] 張蕓,王繼東.基于Excel和VBA的試卷生成及評(píng)分系統(tǒng)[J].西昌學(xué)院學(xué)報(bào)(自然科學(xué)版), 2014(3):67-70.

      [2] 李旭東.基于教務(wù)系統(tǒng)表格及Excel VBA的學(xué)生平時(shí)成績(jī)換算研究與實(shí)現(xiàn)[J].中國(guó)教育信息化·基礎(chǔ)教育,2014(20):81-84.

      [3] 錢(qián)建明.EXCEL VBA在考場(chǎng)編排中的設(shè)計(jì)與實(shí)現(xiàn)[J].中國(guó)教育信息化·基礎(chǔ)教育,2014(7):65-69.

      [4] 鄭杰,周曉宏.基于VBA的輔助排課系統(tǒng)的實(shí)現(xiàn)[J].現(xiàn)代計(jì)算機(jī)(專業(yè)版),2014(24):67-70.

      会宁县| 龙井市| 阜康市| 东源县| 曲靖市| 龙川县| 五台县| 班戈县| 福州市| 莫力| 抚宁县| 介休市| 宁城县| 拜泉县| 张家港市| 陆丰市| 太康县| 永清县| 福泉市| 县级市| 临桂县| 壶关县| 甘孜县| 阿拉善左旗| 八宿县| 加查县| 永丰县| 会昌县| 林西县| 托里县| 稻城县| 吴忠市| 泾阳县| 富川| 金沙县| 博湖县| 林口县| 抚宁县| 化州市| 黔西县| 长武县|