QueryTable オブジェクトでイベントを使用するには、まずクラス モジュールを作成し、イベントを含む QueryTable オブジェクトを宣言する必要があります。 たとえば、 ClsModQT
というクラス モジュールを新規作成するとします。 この新規クラス モジュールには、次のコードを記述します。
Public WithEvents qtQueryTable As QueryTable
イベントを使用して新しいオブジェクトを宣言すると、クラス モジュールの [オブジェクト ] リスト ボックスに表示されます。
プロシージャを実行するには、クラス モジュールで宣言したオブジェクトと QueryTable オブジェクトを接続しておく必要があります。 これを行うために、クラス モジュールに次のコードを記述します。
Sub InitQueryEvent(QT as Object)
Set qtQueryTable = QT
End Sub
この初期化プロシージャを実行すると、クラス モジュールで宣言したオブジェクトは、指定した QueryTable オブジェクトを参照するようになります。 モジュール内のイベントを呼び出すと、そのイベントを初期化できます。 次の使用例は作業中のワークシートのクエリ テーブル 1 を qtQueryTable オブジェクトに接続します。
Dim clsQueryTable as New ClsModQT
Sub RunInitQTEvent
clsQueryTable.InitQueryEvent _
QT:=ActiveSheet.QueryTables(1)
End Sub
オブジェクトのクラスには、これ以外にもイベント プロシージャを作成できます。 [オブジェクト] ボックスで新しいオブジェクトをクリックすると、そのオブジェクトの有効なイベントが [プロシージャ] リスト ボックスに表示されます。
関連項目
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。