VBAでは、外部ライブラリファイルを参照設定することで、VBAの機能を拡張することができます。
このファイルでは「Microsoft Forms 2.0 Object Library」を参照設定するけど、このファイルではしない、と言った風に、参照設定は、ファイル単位に設定することができます。便利ではありますが、それゆえに、「全Excelツールの参照設定の内容をまとめなさい。」と言った指令がきた場合、対象ファイルが複数あると、それらを一つずつ調べるのは大変な作業になります。
そこで、VBProjectを用いた参照設定を調べる方法を紹介します。
① Visual Baisc プロジェクトへのアクセスを許可します。
② 「Microsoft Visual Basic for Application Extensibility」を参照設定します。
③ 下記サンプルコードをModule1に記載して下さい。Module1中に存在するプロシジャの一覧を作成する例です。
Public Sub Sample_VBAReferences_01()
' ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
' 参照設定:
' 「Microsoft Visual Basic for Application Extensibility」
' ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
' このブックのVBProjectをオブジェクト変数に格納する。
Dim Obj As VBIDE.VBProject
Set Obj = ThisWorkbook.VBProject
' 参照設定を調べる。
Dim lp As Long
For lp = 1 To Obj.References.Count
Debug.Print Obj.References.Item(lp).Description
Debug.Print Obj.References.Item(lp).Name
Debug.Print Obj.References.Item(lp).FullPath
Next
' オブジェクトを破棄する。
Set Obj = Nothing
End Sub
このサンプルコードを実行すると、以下のメッセージボックスが表示されます。
コメントを残す