上面已經(jīng)講到,Word 在VBA 編程語(yǔ)言中把宏錄制為一系列的 Word 命令,然后在 Visual Basic 編輯器中打開已錄制的宏,修改其中的指令。也可用 Visual Basic 編輯器創(chuàng)建包括 Visual Basic 指令的非常靈活和強(qiáng)有力的宏,而那些指令是無(wú)法采用錄制的方法的。 在Word 中打開Visual Basic 編輯器的方法是:指向【工具】菜單中的【宏】菜單項(xiàng),然后從其級(jí)聯(lián)菜單中單擊【Visual Basic 編輯器】命令,即可打開如圖11-2 所示的Visual Basic 編輯器。 ![]() 注意: 如果用此命令打不開Visual Basic 編輯器,說(shuō)明文檔和Normal 模板可能已經(jīng)被宏病毒感染了,因?yàn)橐话愕暮瓴《径紩?huì)把【Visual Basic 編輯器】命令屏蔽。此時(shí)可以把當(dāng)前用戶的Normal 模板刪除,用沒(méi)有被感染的Normal 代替或者不要Normal 模板,然后再重新打開Word,就可以打開Visual Basic 編輯器。 下面簡(jiǎn)單介紹一下Visual Basic 編輯器的方法。 11.2.1 利用好窗口 Visual Basic 編輯器中根據(jù)不同的對(duì)象,設(shè)置了不同的窗口。如果能恰當(dāng)?shù)厥褂眠@些窗口,可以使編程效率有極大的提高。Visual Basic 編輯器中主要的窗口包括代碼窗口、立即窗口、本地窗口、對(duì)象瀏覽器、工程資源管理器、屬性窗口、監(jiān)視窗口以及工具箱和用戶窗體窗口等。 11.2.1.1 【代碼】窗口 可以使用【代碼】窗口來(lái)編寫、顯示以及編輯Visual Basic【代碼】。打開各模塊的代碼窗口后,可以查看不同窗體或模塊中的代碼,并且在它們之間做復(fù)制以及粘貼的動(dòng)作。如圖11-3 所示。 ![]() 可以按照下列所述的方式,來(lái)打開【代碼】窗口:
在【代碼】窗口中,左上角的下拉列表框?yàn)椤緦?duì)象】框,用來(lái)顯示所選對(duì)象的名稱。用戶可以按下列表框中的右邊箭頭,來(lái)顯示此窗體中的對(duì)象。 【對(duì)象】框右邊的下拉列表框?yàn)椤具^(guò)程/事件】框,它列出了【窗體】或【對(duì)象】框所含控件中的所有 Visual Basic 的事件。當(dāng)選擇了一個(gè)事件,則與事件名稱相關(guān)的事件過(guò)程就會(huì)顯示在代碼窗口中。 如果在【對(duì)象】框中顯示的是【通用】,則【過(guò)程】框會(huì)列出所有聲明,以及為此窗體所創(chuàng)建的常規(guī)過(guò)程。如果正在編輯模塊中的代碼,則【過(guò)程】框會(huì)列出所有模塊中的常規(guī)過(guò)程。在上述兩實(shí)例中,在【過(guò)程】框中所選的過(guò)程都會(huì)顯示在代碼窗口中。 模塊中的所有過(guò)程會(huì)出現(xiàn)在一個(gè)單一滾動(dòng)條的列表中,它們是按名稱的字母來(lái)排列的??梢詮拇a窗口上端的下拉式列表中選取一個(gè)過(guò)程,此時(shí)指針會(huì)移到所選過(guò)程的第一行代碼上面。 將拆分欄向下拖放,可以將代碼窗口分隔成兩個(gè)水平窗格,兩者都具有滾動(dòng)條??梢栽谕粫r(shí)間查看代碼中的不同部分。顯示在對(duì)象框以及【過(guò)程/事件】框中的信息,是以當(dāng)前擁有焦點(diǎn)的窗格之內(nèi)的代碼為準(zhǔn)。將拆分欄拖放到窗口的頂部或下端,或者雙擊拆分欄,都可以關(guān)閉一個(gè)窗格。 代碼窗口的左邊的灰色區(qū)域?yàn)檫吔鐦?biāo)識(shí)條,在此會(huì)顯示出邊界標(biāo)識(shí),在邊界標(biāo)識(shí)條上單擊鼠標(biāo),可以在對(duì)應(yīng)的行上添加斷點(diǎn)。 單擊【過(guò)程查看】圖標(biāo),可以顯示所選的過(guò)程,同一時(shí)間只能在【代碼】窗口中顯示一個(gè)過(guò)程。 單擊【全模塊查看】圖標(biāo),顯示模塊中全部的代碼。 11.2.1.2 【立即窗口】 【立即窗口】在中斷模式時(shí)會(huì)自動(dòng)打開,且其內(nèi)容是空的。用戶可以在窗口中執(zhí)行如下操作:
![]() 【立即窗口】可以拖放到屏幕中的任何地方,除非已經(jīng)在【選項(xiàng)】對(duì)話框中的【可連接的】選項(xiàng)卡內(nèi),將它設(shè)定為停放窗口。 可以按下關(guān)閉框來(lái)關(guān)閉一個(gè)窗口。如果關(guān)閉框不是可見的,可以先雙擊窗口標(biāo)題行,讓窗口變成可見的。 注意: 在中斷模式下,立即窗口中的語(yǔ)句,是根據(jù)顯示在過(guò)程框的內(nèi)容或范圍來(lái)執(zhí)行的。舉例來(lái)說(shuō),如果鍵入Print variablename,則輸出的就是局域變量的值。這和在程序中止時(shí)Print 方法在正在執(zhí)行的過(guò)程產(chǎn)生一樣。 11.2.1.3 【本地窗口】 可自動(dòng)顯示出所有在當(dāng)前過(guò)程中的變量聲明及變量值。若【本地窗口】為可見的,則每當(dāng)從執(zhí)行方式切換到中斷模式或是操縱堆棧中的變量時(shí),它就會(huì)自動(dòng)地重建顯示,如圖 11-5 所示。 ![]() 下面介紹窗口中各對(duì)象的意義: 【調(diào)用堆?!堪粹o:打開【調(diào)用堆棧】對(duì)話框,它會(huì)列出調(diào)用堆棧中的過(guò)程,如圖11-6 所示。 ![]() 【表達(dá)式】:列出變量的名稱,不能在此編輯數(shù)據(jù)。 列表中的第一個(gè)變量是一個(gè)特殊的模塊變量,可用來(lái)擴(kuò)充顯示出當(dāng)前模塊中的所有模塊層次變量。對(duì)于類模塊,會(huì)定義一個(gè)系統(tǒng)變量<Me>。對(duì)于常規(guī)模塊,第一個(gè)變量是 <name of the currentmodule>。全局變量以及其他工程中的變量,都不能從【本地窗口】中訪問(wèn)。 【值】:列出所有變量的值。所有的數(shù)值變量都應(yīng)該有一個(gè)值,而字符串變量則可以有空值。 當(dāng)按下【值】字段中的一個(gè)值,指針就會(huì)變成 “I”形,且值會(huì)被點(diǎn)劃線包圍??梢跃庉嬕粋€(gè)值,并且按下 ENTER 鍵,向上鍵,向下鍵,TAB 鍵,SHIFT+TAB 鍵或用鼠標(biāo)在屏幕上單擊,使編輯生效。如果這個(gè)值是非法的,則所編輯的字段的值會(huì)以突出顯示,并且會(huì)出現(xiàn)一個(gè)錯(cuò)誤信息框來(lái)提示,此時(shí)可以按下 ESC 鍵來(lái)中止更改。 擁有子變量的變量可以被擴(kuò)充或折疊起來(lái)。折疊起來(lái)的變量不會(huì)顯示一個(gè)值,而變量每一次會(huì)顯示一個(gè)值,并且出現(xiàn)在變量的左邊。 【類型】:列出變量的類型,不能在此編輯數(shù)據(jù)。 11.2.1.4 對(duì)象瀏覽器 顯示出對(duì)象庫(kù)以及工程的過(guò)程的可用類、屬性、方法、事件及常數(shù)變量。用戶可以用它來(lái)搜索及使用既有的對(duì)象,或是來(lái)源于其他應(yīng)用程序的對(duì)象。單擊【視圖】菜單中的【對(duì)象瀏覽器】命令或者按F2 鍵,即可顯示如圖11-7 所示的【對(duì)象瀏覽器】對(duì)話框。 ![]() 【搜索文本】框包含要用來(lái)做搜索的字符串??梢枣I入或選擇所要的字符串。搜索文本框中包含最后四次輸入的搜索字符串,直到關(guān)閉此工程為止。在鍵入字符串時(shí),可以使用標(biāo)準(zhǔn)的 Visual Basic 通配符。如果要查找完全相符的字符串,可以用快捷菜單中的【全字匹配】命令。 輸入搜索的字符串完畢后單擊【搜索】 ![]() 如果單擊【顯示/隱藏搜索結(jié)果】按鈕 ![]() 11.2.1.5 工程資源管理器 工程資源管理器是Visual Basic 編輯器中用以顯示VBA 項(xiàng)目成員的窗口。VBA 項(xiàng)目成員是指與用戶文檔相關(guān)的用戶自定義窗體(Form)、模塊(Modules)和Office 2000 對(duì)象(Microsoft Object)等。窗體、模塊和Office 2000 對(duì)象等的集合構(gòu)成了VBA 項(xiàng)目。VBA 項(xiàng)目成員以樹形結(jié)構(gòu)顯示,以便于用戶查看和使用VBA 項(xiàng)目及其成員。工程資源管理器顯示與用戶在Office 2000 中打開的每一個(gè)文檔相關(guān)的VBA 項(xiàng)目。例如,在Word 2000 中,若用戶打開了三個(gè)文檔,那么工程資源管理器將顯示與這三個(gè)文檔有關(guān)的VBA 項(xiàng)目,如圖11-8 所示。 ![]() 在圖11-8 所示的工程資源管理器中,每一個(gè)文檔構(gòu)成了一個(gè)獨(dú)立的VBA 項(xiàng)目。與文檔相關(guān)的模塊、工作表、窗體等均被視為一個(gè)獨(dú)立的對(duì)象(VBA 項(xiàng)目成員)。工程資源管理器允許用戶方便地選擇要使用的對(duì)象。在用戶選擇了要編輯的對(duì)象以后,Visual Basic 編輯器自動(dòng)打開相關(guān)的工具。例如,當(dāng)用戶選擇了一個(gè)窗體時(shí),該窗體以及窗體工具欄將顯示在屏幕上;當(dāng)用戶選擇了ThisDocument 對(duì)象時(shí),ThisWorkbook 代碼窗口將顯示在屏幕上。 工程資源管理器為用戶提供了以下兩種選擇和編輯對(duì)象的方法:
|
聯(lián)系客服