




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、Excel VBA及其開發(fā)環(huán)境在學習了Excel的一些高級操作以及有關宏的相關知識之后,就可以正式進入到Excel VBA(簡稱VBA)的學習階段了。本章首先向讀者講解有關VBA的一些基礎知識,包括VBA的基本概念、VBA的歷史和VBE開發(fā)環(huán)境等內(nèi)容。VBA概述在前面學習的內(nèi)容當中,讀者對Excel VBA(在本書中,以后將簡稱VBA)應該已經(jīng)有了一些簡單的了解。本節(jié)中將系統(tǒng)地向讀者講解有關VBA的一些基礎知識,使得讀者對VBA有個比較深刻的理解,為以后學習VBA的各種知識打下良好的基礎。VBA的概念VBA是Visual Basic For Application的縮寫,在Office系列辦公
2、軟件當中,VBA又分為Excel VBA語言、Word VBA語言以及PowerPoint VBA語言等。VBA是用Visual Basic(簡稱VB)來開發(fā)應用程序的一種語言,而Excel VBA則偏重于面向Excel對象(如工作簿、工作表以及單元格等)進行編程,也就是說Excel VBA是通過用代碼編寫的命令和使用過程來操作工作表或單元格等對象,進而在Excel中完成自動化操作的相關設置??梢詫xcel VBA看作是VB的一個分支,VBA繼承了VB很大一部分編程方法。VB中的語法結構、變量的聲明以及函數(shù)的使用等內(nèi)容,在VBA中同樣可以正常地進行使用。在20世紀90年代早期,關于應用程序自
3、動化的問題仍是充滿挑戰(zhàn)性的領域。當時,對不同應用程序的自動化,人們都不得不學習不同的自動化語言。例如,自動化Excel需要調(diào)用Excel的宏語言,而自動Word又必須使用Word Basic等。于是,微軟決定開發(fā)出來的應用程序共享一種通用的自動化語言VBA。這樣,對于微軟所有的應用程序,都可以使用VBA來操作其自動化。VBA的歷史早在1985年,Excel就被用在蘋果的Macintosh電腦上,在1987年被移植到PC機當中。在PC機時代之前,曾經(jīng)有過很多成功的工作表軟件,如VisiCalc、Quattro Pro和Multiplan等。VisiCalc是最早的工作表軟件產(chǎn)品,但是很早就被淘汰
4、了。Multiplan是微軟的產(chǎn)品,也是Excel的前身,由于其功能強大并且使用方便,很快就占領了整個市場。最初的Excel宏語言要求代碼保存在一個后綴為.xlm的單獨文件中。因此后來也被稱為XLM宏或者Excel4宏。XLM宏語言包括函數(shù)調(diào)用以及上百個內(nèi)建函數(shù),使用戶可以通過編程控制Excel的各種操作。但是XLM宏語言的在使用上相當?shù)膹碗s,也正因為如此吸引了一些具備很強編程能力的人創(chuàng)建復雜的程序,但是遠離了廣大的一般用戶。學習XLM宏語言需要很長的一個過程。另一方面,最初的PC版Excel運行于Windows平臺,而對于當時的硬件水平來說,能夠運行Window系統(tǒng)的PC機一般都比較的昂貴,
5、一般家庭用戶無法負擔,這也是阻礙VBA發(fā)展的一大原因。基于上述各種原因,微軟大膽的決定要使用VBA整合所有Office產(chǎn)品的宏語言。1993年發(fā)布的Excel5是第一個包含VBA語言的產(chǎn)品。隨后,其他的Office系列產(chǎn)品,包括Word、Access、PowerPoint、FrontPage、Visio、Project和Outlook全部都采用了VBA作為宏語言。VBA的工作原理VBA是Office對象和VBA程序代碼之間相互關聯(lián)和交流的橋梁。VBA代碼是由VB語言來編寫的,其變量定義及語法結果與VB語言完成相同,當使用VBA代碼來調(diào)用Office對象時,需要有VBA程序接口,而這種調(diào)用是通過
6、對象模型自動化實現(xiàn)的。VBA的主要任務是通過編寫程序代碼來操作Office對象,從而完成特定的任務操作。當使用VBA代碼調(diào)用Excel的某個屬性時,如果在VBE環(huán)境中解釋執(zhí)行VBA代碼時,發(fā)現(xiàn)有對Excel這個屬性的調(diào)用,則就自動通過對象模型調(diào)用該屬性,然后通過方法操作該屬性,這樣就實現(xiàn)了VBA代碼和Office對象之間的通信連接。VBA的工作原理如圖3.1所示。VBA與VB前面講過,VBA的程序代碼是由VB語言來編寫的,其語法結構與變量定義方式與VB完全相同。但是,VBA與VB之間還是有一定的區(qū)別,本節(jié)中將主要講解VBA和VB之間的一些區(qū)別,然后講解安裝VBA環(huán)境和幫助文檔方面的相關知識。V
7、BA與VB之間的區(qū)別VBA與VB之間是緊密相關的,VBA是VB的一個分支,也可以將VBA理解為“寄生在Office產(chǎn)品中的Visual Basic”。然而,很多用戶總是混淆VB和VBA的概念。實際上,VBA和VB之間存在著一定的區(qū)別,具體的內(nèi)容包括以下幾個方面。(1)設計目的不一樣。VB用于設計創(chuàng)建標準的應用程序,而VBA則是使已有的應用程序(Excel等)自動化。(2)開發(fā)環(huán)境不同。VB具有自己的開發(fā)環(huán)境,而VBA必須寄生于已有的應用程序(如Excel等)當中。(3)編譯執(zhí)行文件不同。VB執(zhí)行文件的擴展名為.exe。VB由于內(nèi)含編譯器,因此可制作可執(zhí)行文件。VBA則由于內(nèi)含于office系列
8、各軟件內(nèi),且不提供編譯器,故VBA程序只可依附于各軟件而執(zhí)行,無法制作可執(zhí)行文件。(4)運行方式不同。要運行VB開發(fā)的應用程序,用戶不必安裝VB,因為VB開發(fā)出的應用程序是可執(zhí)行文件,而VBA開發(fā)的程序必須依賴于它的“父”應用程序。(5)可用的資源不同。對于程序內(nèi)可引用的資源,包括對象、函數(shù)等。VB在此方面的資源要比VBA多很多。從專業(yè)的角度來看,VB是較專業(yè)的程序設計語言,而VBA的目的則是強化Office應用系統(tǒng),故在可用資源方面,VBA不及VB。安裝VBE開發(fā)環(huán)境和幫助文檔在正式應用VBA編寫程序之前,應該了解一下VBE開發(fā)環(huán)境以及如何安裝VBE開發(fā)環(huán)境。有關VBE開發(fā)環(huán)境將在下一章中進
9、行詳細的介紹,本節(jié)中將主要講解如何安裝VBE開發(fā)環(huán)境及其幫助文檔。如果用戶在安裝Office時使用的是默認的安裝方式,則Excel的VBE開發(fā)環(huán)境就已經(jīng)被安裝好了。否則,可按照下面的步驟進行安裝。VBE開發(fā)環(huán)境介紹在了解了有關VBA的一些基礎知識之后,下面介紹一下VBE開發(fā)環(huán)境,目的是使讀者在編寫VBA程序之前首先熟悉Excel VBA的編程環(huán)境,以便在以后的學習過程中能夠熟練地編寫VBA程序。用來編寫Excel VBA代碼的工具稱為Visual Basic Editor,簡稱VBE,Visual Basic編輯器環(huán)境指的就是VBE開發(fā)環(huán)境。切換到VBE開發(fā)環(huán)境在前面講解的操作中已經(jīng)講解了如何
10、進入到Visual Basic編輯器(以下稱為VBE開發(fā)環(huán)境)當中。本節(jié)中將詳細講解進入到VBE開發(fā)環(huán)境中的幾種方法。通過在Excel工作簿中按下Alt+F11快捷鍵進入到VBE當中。通過單擊“開發(fā)工具”選項卡下的【Visual Basic】命令進入到VBE當中。單擊“開發(fā)工具”選項卡下的【宏】按鈕,在彈出的“宏”對話框窗口中選擇要執(zhí)行的“宏”,然后單擊窗口中的【編輯】按鈕進入到VBE當中,如圖3.7所示。VBE工程窗口VBE的工程窗口中包括工作簿、工作表、窗體、模塊、類模塊等對象。通常情況下,可以將每一個打開的Excel工作簿看作默認名稱為“VBAProject(工作簿名稱)”的一個工程,一
11、個新建的Excel工作簿包含有一個Excel對象,在默認的情況下,在該對象中包含3個工作表對象和一個工作簿對象,如圖3.9所示。在新建一個工作簿之后,還可以在工程中添加窗體、模塊和類模塊等對象,添加了這些對象之后的工程窗口如圖3.10所示。VBE屬性窗口VBE屬性窗口中顯示的是工程窗口中Miscrosoft Excel對象或窗體的屬性。例如在工程窗口中選擇窗體“UserForm1”對象時,則在屬性窗口中將顯示窗體“UserForm1”對象的相關屬性,如圖3.13所示。通過在屬性窗口中可以實現(xiàn)不使用程序代碼就可以設置對象的相關屬性。VBE代碼窗口代碼窗口的作用是用來編輯和存儲Excel VBA程
12、序的代碼,在工程窗口中的任何一個對象都有自己的代碼窗口。例如在VBE環(huán)境中雙擊模塊名稱,就可以查看該模塊的相關程序代碼,如圖3.15所示。代碼窗口的特征在上一節(jié)中講解了代碼窗口的結構及其作用,本節(jié)中將講解代碼窗口中的幾個重要的特征。1自動調(diào)節(jié)輸入屬性和方法的大小寫2自動顯示成員列表3自動顯示參數(shù)信息4添加代碼注釋對象瀏覽器窗口對象瀏覽器窗口的作用是為VBA編程者提供使用各種對象方法和屬性的方法。在VBE環(huán)境中,單擊“視圖”下的“對象瀏覽器”子菜單項或者直接按下F2鍵,將彈出對象瀏覽器窗口。對象瀏覽器窗口主要由搜索結果列表框、類列表框、成員列表框和詳細數(shù)據(jù)顯示區(qū)域4部分組成,如圖3.25所示。自
13、定義VBE開發(fā)環(huán)境提高工作效率VBE是Excel VBA程序設計的開發(fā)環(huán)境,用戶可以按照自己的編程習慣去設置這個開發(fā)環(huán)境。設置合理的開發(fā)環(huán)境,不但可以加快程序編寫的速度,而且還可以提高編寫代碼的正確率。自定義VBE開發(fā)環(huán)境是在VBE開發(fā)環(huán)境中的“選項”窗口中實現(xiàn)的。打開Excel工作簿,進入到VBE開發(fā)環(huán)境當中,然后選擇“工具”菜單下的“選項”子菜單,此時彈出“選項”窗口,如圖3.28所示。示例:第一個VBA程序在了解了VBE開發(fā)環(huán)境之后,就可以開發(fā)Excel VBA程序了。本節(jié)中將通過開發(fā)一個簡單的程序來向讀者講解開發(fā)Excel VBA程序的具體實現(xiàn)過程。實現(xiàn)在Excel工作簿打開時出現(xiàn)一個對話框。舉一反三本章主要講解了Excel VBA及其開發(fā)環(huán)境(VBE開發(fā)環(huán)境)的相關知識。是否能夠熟練地了解VBE開發(fā)環(huán)境是學習Ex
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 包頭輕工職業(yè)技術學院《中國古代文學作品選(一)》2023-2024學年第二學期期末試卷
- 黑龍江省大慶市肇源縣東部五校2024-2025學年(五四學制)七年級下學期4月月考語文試題(含解析)
- 2025企業(yè)合同的基本內(nèi)容
- 統(tǒng)計員給員工培訓大綱
- 汽車行業(yè)動態(tài)解讀
- 文化活動場所的安全管理計劃
- 2025家電購銷合同模板
- 聯(lián)動社區(qū)發(fā)展的圖書館項目計劃
- 幼兒園教研學期工作計劃的教學資源與教學手段
- 2025照明設備銷售合同范本
- GB/T 665-2007化學試劑五水合硫酸銅(Ⅱ)(硫酸銅)
- GA 588-2012消防產(chǎn)品現(xiàn)場檢查判定規(guī)則
- DB1308-T 318-2022酸棗仁采收加工技術規(guī)程
- 柿樹常見病蟲害一覽表課件
- 《普通話》教學講義課件
- 水利工程管理單位定崗標準(試點)
- 2022年高考全國甲卷:寫作指導及范文課件16張
- 無菌技術操作PPT
- DBJT15-82-2021 蒸壓加氣混凝土砌塊自承重墻體技術規(guī)程
- 2022年《跟徐老師學漢語》新HSK六級詞匯詞
- 妊娠劇吐診斷以及臨床處理專家共識
評論
0/150
提交評論