ActiveSheetプロパティ
一番手前に表示されているシートであるアクティブシートを参照するにはActiveSheetプロパティを利用します。
アクティブシートはブックに紐づくため、3つのブックを開いている場合は3つのブックそれぞれでアクティブシートが存在することになります。
1つのブックを複数のウインドウで開いた場合の注意点
Excel2007以降の機能ですが、表示タブ→ウィンドウグループ→新しいウィンドウを開く、を選択すると、同じブックを複数のウインドウで開くことが出来ます。
ブック名にはブック名とコロン(:)+連番が表示され、同じブックでも区別されます。このとき、同じブックでもウインドウが異なれば以下のようにアクティブシートもSheet1とSheet2で異なる場合があります。
この場合のActiveSheetプロパティはウインドウそれぞれで異なります。ブック名だけで判断できない場合があるため、複数のウインドウで表示している場合のアクティブシートの参照には注意が必要です。
構文
Property Application.ActiveSheet As Object
Property Window.ActiveSheet As Object
Property Workbook.ActiveSheet As Object
ActiveSheetプロパティの親オブジェクトとして、Applicationオブジェクト、Windowオブジェクト、Workbookオブジェクトのいずれかを指定します。
省略時は作業中のアクティブブックのアクティブシートが参照対象になります。
サンプルコード
親オブジェクトをApplicationオブジェクト、Windowオブジェクト、WorkbookオブジェクトなどそれぞれでのActivesheetの取得を行うサンプルです。
PERSONAL.XLSBを利用している場合はApplication.Windows(x).Activesheetで取得することが可能です。