VBAでアクティブウィンドウを参照する

アクティブウィンドウの参照

最前面に表示されているWindowオブジェクトであるアクティブウィンドウを参照するにはActiveWindowプロパティを利用します。

Excel2010まではマルチドキュメントインターフェース(MDI)のため、Excel自体のウィンドウであるアプリケーションウィンドウと、アプリケーションウィンドウ内に表示する複数のブックウィンドウがあります。

Excel2013からはシングルドキュメントインターフェース(SDI)のため、Excelブックを1つ開くとExcelアプリケーションが1つ起動し、アプリケーションウィンドウに表示されます。

そのため、アクティブウィンドウの操作は、ExcelのバージョンがExcel2010まではブックウィンドウが対象となり、Excel2013からはアプリケーションウィンドウが対象になります。

構文

Application.ActiveWindow

親オブジェクトとしてApplicationオブジェクトを指定します。省略しても構いません。

サンプルコード

アクティブウィンドウの名前を取得するサンプルです。

インデックス番号が1はアクティブウィンドウ

Windowsプロパティの引数にインデックス番号1を設定すると、そのWindowオブジェクトが指すのは必ずアクティブウィンドウになります。

そのため、以下のWindows(1)としてWindowオブジェクトを取得するコードも、上のサンプルコードのActiveWindowプロパティを利用した方法と同じ意味の処理になります。

関連記事

サブコンテンツ

このページの先頭へ