対象:Excel2007, Excel2010, Excel2013
「vba 複数シート選択されているかどうかの確認」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。
Excelで、1枚のシートが選択されているのか、複数のシートが選択されているのかを調べる、VBA(Visual Basic for Applications)のコードを探している方による検索です。
参考になりそうな簡単なマクロをご紹介しておきましょう。
[スポンサードリンク]
複数シートが選択されているかを確認するサンプルマクロ
以下のマクロを実行したときに、1枚のシートが選択されていれば「1枚のシートが選択されています。」、複数シートが選択されていれば「複数のシートが選択されています。」というメッセージがそれぞれ表示されます。
Sub 複数シートが選択されているかを確認する()
If ActiveWindow.SelectedSheets.Count = 1 Then
MsgBox "1枚のシートが選択されています。"
Else
MsgBox "複数のシートが選択されています。"
End If
End Sub
If ActiveWindow.SelectedSheets.Count = 1 Then
MsgBox "1枚のシートが選択されています。"
Else
MsgBox "複数のシートが選択されています。"
End If
End Sub
サンプルマクロの解説
WindowオブジェクトのSelectedSheetsプロパティで、選択されているシートを表すSheetsコレクションオブジェクトを取得することができます。
そのWindowオブジェクトのSelectedSheetsプロパティで取得したSeetsコレクションオブジェクトに含まれる、単一オブジェクトの数を取得するCountプロパティで、何枚のシートが選択されているのかを調べて、
複数のシートが選択されているのかどうかの判定を行っています。
[スポンサードリンク]
Home » エクセルマクロ・Excel VBAの使い方 » Windowオブジェクト » VBAで複数シートが選択されているかどうか確認する-Window.SelectedSheets.Count