劉琴琴
(南通理工學(xué)院,江蘇 南通 226002)
EXCEL VBA在數(shù)據(jù)表處理中的應(yīng)用
劉琴琴
(南通理工學(xué)院,江蘇 南通 226002)
隨著人們接觸計(jì)算機(jī)專業(yè)訓(xùn)練機(jī)會(huì)的增多,Office等辦公軟件已經(jīng)在文字信息處理、數(shù)據(jù)統(tǒng)計(jì)分析、多媒體播放等領(lǐng)域得到廣泛應(yīng)用。EXCEL數(shù)據(jù)表處理可以采用多種界面化交互統(tǒng)計(jì)分析方式,也可以使用高級(jí)編程方式進(jìn)行數(shù)據(jù)表處理和分析,因此已被許多用戶廣泛接受和使用。文章通過(guò)使用EXCEL VBA數(shù)據(jù)表處理的實(shí)踐工作經(jīng)驗(yàn),分析了EXCEL VBA的應(yīng)用實(shí)例,歸納了VBA在EXCEL數(shù)據(jù)表處理中的應(yīng)用優(yōu)勢(shì)。
EXCEL;數(shù)據(jù)表;VBA;Office
VBA是一種Office軟件嵌套的程序開發(fā)技術(shù),其采用Visual Basic語(yǔ)言和面向?qū)ο笤O(shè)計(jì)技術(shù),增強(qiáng)了宿主的功能,為用戶提供了快速化、精確化處理服務(wù)[1]。VBA在EXCEL數(shù)據(jù)表處理中的應(yīng)用越來(lái)越普遍,用戶可以錄制較為簡(jiǎn)單的宏命令,完成數(shù)據(jù)格式化、統(tǒng)計(jì)分析、輸出結(jié)果等功能,已經(jīng)在學(xué)生成績(jī)處理、身份證信息提取、乘法表打印等辦公領(lǐng)域得到了廣泛應(yīng)用,有效地提升了EXCEL定制化、個(gè)性化處理水平,為不同的用戶提供了不同的服務(wù),進(jìn)一步提高了人們工作、生活和學(xué)習(xí)的信息化水平[2]。
EXCEL VBA在數(shù)據(jù)表處理過(guò)程中已經(jīng)得到了廣泛的普及和使用,取得了顯著的應(yīng)用成效[3]。本文選取乘法表打印、從身份證號(hào)碼中提取性別、評(píng)定全國(guó)計(jì)算機(jī)考試成績(jī)等級(jí)等應(yīng)用實(shí)例展示了VBA開發(fā)過(guò)程。
(1)乘法表打印。初期Basic程序設(shè)計(jì)時(shí)可以采用Print語(yǔ)句將乘法表輸出到顯示器上,VBA乘法表打印時(shí)不再支持上述方法,用戶使用時(shí)可以直接在VBA宏程序編輯窗口輸入代碼,并且能夠進(jìn)行交互式調(diào)試。VBA Print方法程序代碼關(guān)鍵的步驟是設(shè)置一個(gè)準(zhǔn)確的循環(huán)模式,如下所述:
該VBA程序首先需要計(jì)算表達(dá)式的值,然后再輸出計(jì)算結(jié)果。
(2)提取身份證號(hào)碼中的性別字段。目前,我國(guó)居民的身份證號(hào)碼包括兩種,分別是15位和18位。其中,15位身份證號(hào)標(biāo)識(shí)性別的處于第15位;18為身份證號(hào)的第17位標(biāo)識(shí)性別。因此,提取身份證號(hào)碼中的性別位需要遞進(jìn)的、嵌套的多層選擇分支結(jié)構(gòu)進(jìn)行編寫,以便能夠確定身份證號(hào)碼類型,同時(shí)遞進(jìn)地確定性別標(biāo)識(shí)位。VBA程序執(zhí)行時(shí),邏輯表達(dá)式判斷值包括True和False,程序?yàn)檎鏁r(shí)進(jìn)入語(yǔ)句序列,否則進(jìn)入另外一個(gè)語(yǔ)句序列。身份證號(hào)碼確定的VBA宏程序代碼如下所述:
(3)評(píng)定全國(guó)計(jì)算機(jī)考試成績(jī)等級(jí)。目前,全國(guó)計(jì)算機(jī)考試成績(jī)是等級(jí)制,按照學(xué)生計(jì)算機(jī)考試成績(jī)的不同劃分為3個(gè)等級(jí),分別是優(yōu)秀、合格、不合格。同時(shí),為了將全國(guó)計(jì)算機(jī)等級(jí)考試成績(jī)統(tǒng)計(jì)到總分中,也可以將不同等級(jí)的學(xué)生成績(jī)進(jìn)行量化,分別是優(yōu)秀=95分;合格=70分;不合格=0分。具體的,評(píng)定全國(guó)計(jì)算機(jī)考試成績(jī)等級(jí)存在3個(gè)分支,可以使用VBA的多分支結(jié)構(gòu)If……Then……ElseIf實(shí)現(xiàn)上述功能。舉例打開“2016年3月全國(guó)計(jì)算機(jī)成績(jī)”EXCEL表,統(tǒng)計(jì)會(huì)審B1502班51位學(xué)生計(jì)算機(jī)成績(jī),在第9列輸出百分制成績(jī)(以顯示10位學(xué)生成績(jī)表為例),錄制宏程序代碼如表1所示。
End Sub
執(zhí)行結(jié)果直接顯示于EXCEL表I列中,如表2所示。
EXCEL使用VBA技術(shù)處理數(shù)據(jù)表具有許多優(yōu)勢(shì),最為明顯的優(yōu)點(diǎn)包括錄制宏較為簡(jiǎn)單、解決工作表處理的重復(fù)性操作、提供便捷的人機(jī)交互操作。
(1)錄制宏較為簡(jiǎn)單。宏是一個(gè)程序指令集合,VBA可以為EXCEL錄制宏提供一個(gè)簡(jiǎn)單的編程交互界面,用戶需要操作的每一個(gè)步驟都可以保存在宏程序中,并且可以指定一個(gè)快捷鍵,使用相同的快捷鍵處理EXCEL數(shù)據(jù)表,因此數(shù)據(jù)表處理較為簡(jiǎn)單[4]。
(2)解決工作表處理的重復(fù)性操作。EXCEL數(shù)據(jù)表處理過(guò)程中需要解決大量的重復(fù)性數(shù)據(jù),而VBA利用程序可以將重復(fù)性的操作集成在一起,大幅度提升EXCEL數(shù)據(jù)包處理速度和效率[5]。
(3)提供便捷的人機(jī)交互操作。EXCEL數(shù)據(jù)表處理過(guò)程中,由于許多用戶非計(jì)算機(jī)專業(yè)人員,沒(méi)有經(jīng)歷過(guò)專業(yè)的訓(xùn)練,因此許多程序設(shè)計(jì)較為復(fù)雜,不容易掌握。VBA可以為用戶提供一個(gè)界面化的窗口輸入程序代碼,宏程序編制也更加具有動(dòng)態(tài)性、人性化和靈活性。比如,查詢學(xué)生全國(guó)或江蘇省計(jì)算機(jī)等級(jí)考試成績(jī)情況時(shí),可以輸入學(xué)生的考號(hào),EXCEL表格就可以顯示出計(jì)算機(jī)等級(jí)考試成績(jī)的匯總情況,并且可以設(shè)置相關(guān)的窗口顯示信息權(quán)限。
EXCEL是Microsoft Office最為重要的功能套件之一,VBA是當(dāng)前主流Office軟件為EXCEL提供的一項(xiàng)重要功能,其可以錄制宏程序,利用程序代替人們的手動(dòng)操作,可以有效提高EXCEL表格數(shù)據(jù)處理的速度,具有重要的作用和意義。
表1 某班學(xué)生計(jì)算機(jī)成績(jī)錄制宏程序代碼EXCEL表
表2 顯示在EXCEL表I列中的執(zhí)行結(jié)果
[1]王建華.EXCEL 2010 VBA在職工退休審批管理中的應(yīng)用[J].電腦編程技巧與維護(hù),2015(6):60-61.
[2]鄧朝暉.基于EXCEL VBA的事業(yè)單位崗位設(shè)置評(píng)分系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)與現(xiàn)代化,2012(10):213-215.
[3]楊亭,常霞,粘丹妮.衛(wèi)星遙測(cè)數(shù)據(jù)處理軟件的EXCEL VBA實(shí)現(xiàn)[J].計(jì)算機(jī)測(cè)量與控制,2014(8):267-269.
[4]陳志華,侯瑞,石林輝,等.EXCEL VBA在數(shù)據(jù)庫(kù)中自動(dòng)提取地層數(shù)據(jù)的實(shí)踐應(yīng)用[J].石油工業(yè)計(jì)算機(jī)應(yīng)用,2015(4):32-34.
[5]蘇進(jìn).探究如何在EXCEL中使用VBA編程處理數(shù)據(jù)[J].數(shù)字技術(shù)與應(yīng)用,2016(1):250.
Application of VBA EXCEL in Data Table Processing
Liu Qinqin
(Nantong Polytechnic College, Nantong 226002, China)
With the increase of people's access to computer professional training, Office and other Office software have been widely used in the field of text information processing, data statistical analysis, multimedia play and so on. EXCEL data table processing can make use of a variety of interactive statistical analysis methods and the advanced programming method for data processing and analysis, which has been widely accepted and used by many users. This paper analyzed the VBA EXCEL application examples and summarized the VBA in the EXCEL data sheet processing application advantage through the use of VBA EXCEL data table to deal with the practical work experience.
EXCEL; data table; VBA; Office
劉琴琴(1983— ),女,江蘇南通,講師;研究方向:計(jì)算機(jī)科學(xué)與技術(shù)。