劉靜
摘 要:隨著辦公自動(dòng)化系統(tǒng)的發(fā)展和不斷完善,基于計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的無(wú)紙化辦公得到廣發(fā)應(yīng)用,無(wú)紙化辦公對(duì)信息的快速合成與傳遞是傳統(tǒng)辦公模式無(wú)法比擬的。運(yùn)用Excel電子表格的強(qiáng)大功能,能夠方便地處理多重報(bào)表、交叉報(bào)表、復(fù)雜報(bào)表,起到事半功倍的效果。本文介紹如何通過(guò)VBA( Visual Basic For Application)技術(shù)快速、準(zhǔn)確、高效地以Excel電子表格形式展現(xiàn)數(shù)據(jù)統(tǒng)計(jì)信息。
關(guān)鍵詞:VBA技術(shù);優(yōu)化;報(bào)表制作流程
一、背景分析
直到90年代早期,使應(yīng)用程序自動(dòng)化還是充滿挑戰(zhàn)性的領(lǐng)域。對(duì)每個(gè)需要自動(dòng)化的應(yīng)用程序,人們不得不學(xué)習(xí)一種不同的自動(dòng)化語(yǔ)言。隨著Microsoft office辦公自動(dòng)化軟件的不斷普及,綜合統(tǒng)計(jì)分析人員都能較為熟練地操作Excel電子表格軟件。例如:可以用EXCEL的宏語(yǔ)言來(lái)使EXCEL自動(dòng)化,使用WORD BASIC使WORD自動(dòng)化等等。微軟決定讓它開(kāi)發(fā)出來(lái)的應(yīng)用程序共享一種通用的自動(dòng)化語(yǔ)言----VBA,可以認(rèn)為VBA是非常流行的應(yīng)用程序開(kāi)發(fā)語(yǔ)言VASUAL BASIC 的子集。實(shí)際上VBA是"寄生于"VB應(yīng)用程序的版本。VBA和VB的區(qū)別包括如下幾個(gè)方面:
1. VB是設(shè)計(jì)用于創(chuàng)建標(biāo)準(zhǔn)的應(yīng)用程序,而VBA是使已有的應(yīng)用程序(EXCEL等)自動(dòng)化。
2. VB具有自己的開(kāi)發(fā)環(huán)境,而VBA必須寄生于已有的應(yīng)用程序。
3. 要運(yùn)行VB開(kāi)發(fā)的應(yīng)用程序,用戶不必安裝VB,因?yàn)閂B開(kāi)發(fā)出的應(yīng)用程序是可執(zhí)行文件(*.EXE),而VBA開(kāi)發(fā)的程序必須依賴于它的"父"應(yīng)用程序,例如EXCEL
Excel電子表格軟件是應(yīng)用最廣泛的軟件之一,它的數(shù)據(jù)處理、圖表功能及各種函數(shù)和工具深受廣大用戶的喜愛(ài)。Excel的強(qiáng)大優(yōu)勢(shì)還在于它提供的宏語(yǔ)言VisualBasicforApplication(VBA)。VisualBasic是windows環(huán)境下開(kāi)發(fā)應(yīng)用軟件的一種通用程序設(shè)計(jì)語(yǔ)言,功能強(qiáng)大,簡(jiǎn)便易用。VBA是它的一個(gè)子集,可以廣泛地應(yīng)用于Microsoft公司開(kāi)發(fā)的各種軟件中,例如Word、Excel、Access等。
多數(shù) Office 程序(包括 Excel)所用的宏代碼語(yǔ)言都是 Visual Basic for Applications (VBA)。VBA可以稱作Excel的"遙控器"。通過(guò)逐步執(zhí)行程序?yàn)槟4娴牟僮鞫?Excel 中錄制過(guò)宏。錄制宏時(shí),Excel 會(huì)在附加到工作簿的模塊中錄制描述操作的 VBA 代碼。Excel 中的宏是存儲(chǔ)在工作簿中的代碼段,它可以自動(dòng)處理重復(fù)的任務(wù),快速地組織數(shù)據(jù)。宏可以使我們的工作和生活更加方便,這正是它值得關(guān)注的原因。模塊是用于存儲(chǔ)宏的容器,宏是用 VBA 語(yǔ)言編寫(xiě)。
二、實(shí)施步驟
1、在工作表中加入超級(jí)鏈接。
對(duì)于存儲(chǔ)在本地、工作組或者局域網(wǎng)中共享的文件數(shù)據(jù),可通過(guò)在工作表中設(shè)置超級(jí)鏈接來(lái)定位文件。文件的超級(jí)鏈接一方面可以快速定位和打開(kāi)所需文件,另一方面可以杜絕報(bào)表出錯(cuò)。一旦文件不存在或讀取錯(cuò)誤,報(bào)表就會(huì)中斷自動(dòng)合成并跳出提示信息(圖一)。點(diǎn)擊“調(diào)試”,出錯(cuò)信息就會(huì)以突出的背景色顯示在Visual Basic 編輯器的代碼段中。
2、錄制宏
記錄宏其實(shí)就是將工作的一系列操作結(jié)果錄制下來(lái),可以使用Excel菜單“工具→宏→錄制新宏”,這樣將產(chǎn)生一個(gè)宏??墒呛暧涗浧髦辉试S用戶完成用VBA可能完成的一部分,而不少工作,必須通過(guò)編寫(xiě)VBA程序來(lái)完成。具體步驟是通過(guò)EXCEL菜單“工具”→“宏”,選中需編輯的宏,按“編輯”鍵,就可以對(duì)這個(gè)宏進(jìn)行編輯。 也可以通過(guò)在“工具”菜單上,指向“宏”,然后單擊“Visual Basic 編輯器” 打開(kāi)“Visual Basic 編輯器”。 “Visual Basic 編輯器”是一個(gè)用于編寫(xiě)和編輯 VBA 的工具。我們可以在過(guò)程中加入程序,也可在宏中加入新的過(guò)程。插入一個(gè)模塊,作為存儲(chǔ)宏的容器。在開(kāi)始編寫(xiě)宏之前,需要先想好將宏保存在哪里。模塊是存儲(chǔ)宏的容器,它通過(guò)VBA 項(xiàng)目的更大的容器附加到工作簿中。Excel中的許多操作都可以是一個(gè)“宏”?!坝涗浐辍逼鋵?shí)就是將工作的一系列操作結(jié)果錄制下來(lái),并命名存儲(chǔ) (相當(dāng)于VB中一個(gè)子程序 )。在Excel中,“記錄宏”僅記錄操作結(jié)果,而不記錄操作過(guò)程。
錄制完成后使用Excel菜單“工具→宏→停止錄制”,選擇“工具→宏”,點(diǎn)擊運(yùn)行,可以測(cè)試和編輯新錄制的宏。
3、設(shè)置快捷鍵
在Excel “工具”菜單上,指向“宏”,選擇需要設(shè)置快捷鍵的宏,單擊“選項(xiàng)”,設(shè)置運(yùn)行該宏的快捷鍵(圖二)。因?yàn)樵贓xcel工作薄中可能包含多個(gè)不同功能的宏,例如當(dāng)您需要對(duì)某一數(shù)據(jù)區(qū)域執(zhí)行多次操作或?qū)Χ鄠€(gè)數(shù)據(jù)區(qū)域執(zhí)行操作時(shí),便可使用嵌套循環(huán),宏的嵌套循環(huán)就需要多個(gè)宏的運(yùn)行來(lái)實(shí)現(xiàn)。設(shè)置快捷鍵可以快速找到并運(yùn)行需要的宏,防止出錯(cuò)。
三、結(jié)束語(yǔ)
就大型工業(yè)企業(yè)而言,大量的業(yè)務(wù)和運(yùn)營(yíng)數(shù)據(jù)對(duì)企業(yè)的經(jīng)營(yíng)分析活動(dòng)具有至關(guān)重要的作用,是企業(yè)經(jīng)營(yíng)決策層進(jìn)行決策活動(dòng)的依據(jù)和基礎(chǔ)。大量的信息由企業(yè)IT部門(mén)的工作人員依據(jù)數(shù)據(jù)庫(kù)中的數(shù)據(jù)生成統(tǒng)計(jì)信息和相關(guān)的報(bào)表,展現(xiàn)給企業(yè)的綜合統(tǒng)計(jì)分析人員。宏技術(shù)優(yōu)勢(shì)體現(xiàn)在速度快,正確率高,主要適合于處理大量重復(fù)的統(tǒng)計(jì)數(shù)據(jù)和報(bào)表的制作合成,有利于降低勞動(dòng)強(qiáng)度,對(duì)于工序繁瑣,易出錯(cuò)的各類報(bào)表,有很好的應(yīng)用前景。