工欲善其事,必先利其器。對(duì)于 Excel VBA 開(kāi)發(fā)來(lái)說(shuō),VBA 編輯器就是最核心的開(kāi)發(fā)工具??梢哉f(shuō),Excel VBA 開(kāi)發(fā)中的每一個(gè)步驟,幾乎都在 VBA 編輯器中進(jìn)行,包括編寫(xiě)、調(diào)試、測(cè)試、運(yùn)行、代碼組織等。
這篇文章我們主要介紹 VBA 編輯器基礎(chǔ)部分,接下來(lái)學(xué)習(xí) VBA 基礎(chǔ)部分時(shí),將會(huì)反復(fù)使用到。
建議你讀這篇文章時(shí),打開(kāi)一個(gè) Excel 工作簿,按照文章內(nèi)容,自己“折騰折騰”,這是學(xué)習(xí) VBA 最快的方法。
打開(kāi) VBA 編輯器
方法一,使用開(kāi)發(fā)工具選項(xiàng)卡。點(diǎn)擊開(kāi)發(fā)工具選項(xiàng)卡Visual Basic命令。
方法二,工作表右鍵菜單。在任意工作表標(biāo)簽上方,右鍵,在彈出的選項(xiàng)列表中,選擇「查看代碼」。
方法二,使用快捷鍵 Alt + F11。
認(rèn)識(shí) VBA 編輯器
通過(guò)上述方法打開(kāi)編輯器,將會(huì)看到如下界面。圖中已標(biāo)出編輯器每個(gè)模塊的名稱(chēng)。
編輯器中每個(gè)模塊的基本用法如下:
工具欄:編輯器命令欄,與 Excel 功能區(qū)域類(lèi)似,包含 Excel VBA 開(kāi)發(fā)相關(guān)的命令。
VBA 工程:顯示當(dāng)前 VBA 工程包含的所有對(duì)象。通常,一個(gè)工作簿就是一個(gè) VBA 工程,其中包括 Excel 對(duì)象、工作表對(duì)象、模塊等。
屬性窗口:查看和設(shè)置選中對(duì)象的屬性的窗口。
代碼編輯窗口:實(shí)際編寫(xiě)代碼的位置。編寫(xiě)、修改、保存代碼,都在這里進(jìn)行。
立即窗口:代碼運(yùn)行過(guò)程中,打印出的內(nèi)容,在立即窗口中顯示。一般用于調(diào)試代碼。
管理 VBA 工程
通常,一個(gè)工作簿就是一個(gè) VBA 工程,其中包括 Excel 對(duì)象、工作表對(duì)象、模塊等。當(dāng)多個(gè)工作簿同時(shí)打開(kāi)時(shí),他們公用同一個(gè) VBA 編輯器,VBA 工程界面顯示所有的 VBA 工程。
插入/刪除模塊
在一個(gè) VBA 工程中想要插入新的模塊時(shí),可在 VBA 工程右鍵,選擇插入類(lèi)型即可。
要?jiǎng)h除模塊,選中模塊,右鍵,選擇「移除 模塊」
修改對(duì)象/模塊屬性
當(dāng)點(diǎn)擊 VBA 工程界面中任意一個(gè) Excel 對(duì)象或模塊時(shí),在下方的屬性窗口顯示選中對(duì)象的各項(xiàng)屬性信息。其中左側(cè)是屬性名,右側(cè)是屬性值,在這里可以直接手動(dòng)修改屬性值。
以下為一個(gè) Excel 工作表對(duì)象的屬性窗口。
運(yùn)行 VBA 代碼
編輯器中運(yùn)行 VBA 代碼,可能是執(zhí)行最頻繁的操作了。在開(kāi)發(fā)過(guò)程中,每更新一次代碼,可能需要運(yùn)行,看一下其結(jié)果是否正確。
現(xiàn)在在模塊1中有以下一段代碼(如何寫(xiě) VBA 代碼,將在下一篇中介紹):
代碼的作用是,在 Sheet1 工作表 A1 單元格,寫(xiě)入 “Hello World” 內(nèi)容。
在編輯器中運(yùn)行 VBA 代碼,有以下 3 種方法:
1.使用工具欄命令
首選,將光標(biāo)放置在要運(yùn)行的代碼的任意一處,再在工具欄選擇「運(yùn)行」→「運(yùn)行子過(guò)程/用戶窗體」命令。
2.使用快捷工具欄命令
首選,將光標(biāo)放置在要運(yùn)行的代碼的任意一處,再點(diǎn)擊快捷工具欄「? 」按鈕。
3.使用快捷鍵 F5
首選,將光標(biāo)放置在要運(yùn)行的代碼的任意一處,再使用快捷鍵 F5,即可運(yùn)行代碼。
總結(jié)
以上就是 VBA 編輯器的基礎(chǔ)使用方法,建議你按照本教程內(nèi)容,自己動(dòng)手操作一遍。動(dòng)手操作,好于看100遍教程。關(guān)于 VBA 編輯器的更多內(nèi)容和教程,將專(zhuān)門(mén)用一章介紹。目前階段,掌握上述基礎(chǔ)部分,滿足接下來(lái)的 VBA 學(xué)習(xí)要求。
聯(lián)系客服