アクティブウィンドウのオブジェクトの取得

広告

ウィンドウのオブジェクトを取得するには、インデックス番号を指定するかウィンドウ名を指定してWindowオブジェクトを取得していましたが、それ以外にも現在アクティブになっているウィンドウを取得することが出来ます。

アクティブなウィンドウのWindowsオブジェクトを取得するには、Applicationオブジェクトの「ActiveWindow」プロパティを使います。

Dim window1 As Window

Set window1 = Application.ActiveWindow

単に次のように記述しても構いません。

Dim window1 As Window

Set window1 = ActiveWindow

サンプルプログラム

では簡単なサンプルで試してみましょう。3つのブックを開いておきます。

アクティブウィンドウ

現在アクティブになっているウィンドウを取得し、タイトルを表示させてみます。

testwindow3.bas

Sub テスト()
    
    Dim window1 As Window
    
    Set window1 = ActiveWindow
    MsgBox window1.Caption
    
End Sub

上記マクロを実行すると次のようになります。

アクティブウィンドウ

( Written by Tatsuo Ikura )