VBA加載宏基礎

一、簡介

加載宏可以擴展Excel的功能,與Excel的內置功能一致,是爲Excel提供自定義命令或自定義功能的補充程序。某些加載宏還提供了可用於公式中的新的工作表函數。

使用某加載宏必須已安裝,且須在加載宏對話框中進行調用。加載宏默認安裝在Microsoft Office/Office 文件夾中的 Library 文件夾或 Addins 文件夾,或它們的子文件夾中。

其中,Excel加載宏是包含了所需要實現的功能的函數或過程的工作薄(保存爲.xla文件)。

二、分類

1、Excel加載宏   由Excel VBA代碼編寫,擴展名爲.xla。

2、COM加載宏   由VB或VC或Office Developer Edition開發編寫。COM(Component Object Model)加載宏,擴展名爲DLL或EXE,可以與支持加載宏的所有Office應用程序一起使用。其經過了編譯後,有更可靠的安全性。但其不能包含Excel的工作表或圖表。

3、自動化加載宏  由VB或VC編寫

注:本次學習只針對Excel加載宏,對COM加載宏和自動化加載宏僅略加介紹。

三、加載宏的特點

加載宏實現了代碼和數據的分離,且不需要在Excel啓動時加載,併爲Excel提供了附加功能。

1、將自定義工作表函數作爲加載宏,可以直接在其它工作薄中應用,而不必像在其它工作薄中運用自定義函數時必須加上函數所在工作薄的名稱。

2、在存儲加載宏時,若已對該加載宏進行屬性設置,則在將該加載宏調入加載宏對話框中後可以清楚地看到該加載宏實現功能的說明。

3、當Excel啓動時,可以自動打開已安裝的加載宏,而不管加載宏存儲在哪個目錄下。

4、在關閉/卸載某加載宏時,不會顯示諸如“是否保存對該加載宏的更改?”的提示。

5、可以避免在打開工作簿時出現宏警告。

三、加載宏的調用

調用方法:工具——加載宏(I)……,出現加載宏對話框,該對話框列出了所有可用的加載宏的名稱,複選框已選中的加載框處於打開狀態。利用該對話框可以對加載宏進行添加和管理。如果需要安裝/卸載某加載宏,選中/取消選中相應的複選框即可。也可以通過瀏覽按鈕添加創建的自定義加載宏。默認情況下,加載宏對話框中的文件類型有:XLA文件(從XLS文件創建的加載宏)和XLL文件(單獨編譯過的DLL文件)。

若選中相應加載宏的複選框後,Excel的用戶界面將發生一些微小的變化。譬如,安裝了“分析工具庫”加載宏後,將在工具菜單中出現一個新的“數據分析(D)…”菜單項;安裝了“歐元轉換工具”加載宏後,會出現一個新的工具欄EuroValue。若加載宏中只包含自定義工作表函數,則該函數會出現在“插入函數”對話框中(但如果用Private關鍵字聲明瞭這個Function過程,則不會出現在此對話框中)。

如果在加載宏對話框中沒有顯示所需的加載宏程序,則需要按瀏覽按鈕添加或創建加載宏(見下面如何創建加載宏介紹)。

注:使用加載宏對話框中的自動化…按鈕可以安裝COM加載宏。

四、Excel中已有的加載宏

已有的加載宏簡介:

1、分析工具庫:提供一組包括金融、統計和工程類的數據分析工具和函數,增添了Excel中沒有包含的統計和分析功能。主要有方差分析、相關係數、協方差、描述統計、指數平滑、F-檢驗 雙樣本方差、傅利葉分析、直方圖、移動平均、隨機數發生器、排位與百分比排位、迴歸、抽樣、t檢驗、z檢驗等。

2、分析工具庫——VBA函數:內容與上面的相同,允許開發人員用分析工具庫的語法發佈金融、統計及工程分析工具和函數。爲分析工具庫提供的VBA函數。

3、條件求和嚮導:提供了對列表中的數據根據不同的條件求和的工具。

4、歐元轉換工具:提供用於歐元轉換的工具。將數值的格式設置爲歐元格式,並提供 EUROCONVERT 工作表函數用於轉換貨幣。

5、Internet Assistant VBA:開發人員可用 Internet Assistant 語法,將 Excel 數據發佈到網站上。

6、查找嚮導:創建在列表中查找數據的公式。

7、規劃求解:提供了公式求解和優化的工具。對基於可變單元格和條件單元格的假設分析方案進行求解計算。

各加載宏詳細的介紹見以後的學習專題。

五、如何創建Excel加載宏

不需要其他軟件或工具,從Excel工作薄即可創建加載宏。任何.xls文件也都可以轉換爲加載宏,但並不是所有的.xls文件都適合用作加載宏,一般將包含通用功能的工作薄轉換成加載宏可以爲使用提供很大的方便。創建Excel加載宏的步驟如下:

1、新建一個Excel文檔。

2、打開VB編輯器,插入一個模塊。

3、添加一個函數或程序,即所需實現功能的函數或程序。

4、設置加載宏名稱。即返回Excel主界面,打開文件菜單下的屬性菜單,輸入相關內容,其中標題名即爲加載宏的名稱,備註欄中的說明即爲對加載宏功能的描述,當選中這個加載宏時,這些說明將出現在加載宏對話框的底部。

5、保存工作薄。打開文件菜單中的另存爲…命令對話框,輸入文件名,並在保存類型下拉列表中選擇“Microsoft Office Excel加載宏”,單擊保存按鈕。

現在,打開“加載宏”對話框,單擊“瀏覽…”按鈕打開剛創建的加載宏,則該加載宏將出現在對話框的列表中。需要使用該功能時,只需在單元格中輸入該函數或程序名即可。

注:轉換成加載宏的工作簿必須至少含有一個工作表,且工作表須處於活動狀態。

六、處理加載宏的VBA過程

加載宏是AddIns集合的一個成員。在Excel2003中,構成AddIns集合的部分加載宏的文件及其位置存儲在Windows註冊表中的下列位置:

HKEY_CURRENT_USER/Software/Microsoft/Office/11.0/Excel/Add-in Manager

但Excel附帶的標準加載宏不會出現在這個註冊表中。

1、向AddIns集合添加新的AddIn對象的方法

(1)在Excel菜單中,選擇工具——加載宏,單擊瀏覽按鈕,找到所需加載宏後確定即可。

(2)使用AddIns集合的Add方法。如Application.AddIns.Add “<加載宏文件路徑>”。

2、從AddIns集合中刪除某加載宏

(1)編輯Windows註冊表(使用regedit.exe),但並不適用於所有的加載宏文件。

(2)直接刪除或移動該.XLA文件。

3、關於AddIns對象屬性

共有14個屬性,可以在幫助中查閱,其中5個爲隱藏屬性。主要的屬性有:

Name屬性、Path屬性、FullName屬性、Title屬性、Comments屬性、Installed屬性。

4、關於AddIns對象事件

有兩個事件,即AddInInstall(安裝時即會發生)和AddInUninstall(卸載時即會發生)。

發佈了28 篇原創文章 · 獲贊 6 · 訪問量 25萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章