ここではVBAでシート数を取得する方法について説明します。



シート数を取得するには?

シート数を取得するにはSheetオブジェクトのCountプロパティを使用します。以下の書式を使用します。

Sheets.Count

以下に例を示します。

  Dim cnt As Integer

cnt = Sheets.Count

MsgBox "シート数:" & cnt




グラフシート数を取得するには?

グラフシート数を取得するにはChartsオブジェクトのCountプロパティを使用します。以下の書式を使用します。

Charts.Count

以下に例を示します。

  Dim cnt As Integer

cnt = Charts.Count

MsgBox "シート数:" & cnt

実行例を以下に示します。複数のシートの中からグラフシートの枚数だけを抽出して表示していることがわかります。





グラフシート以外のシート数を取得するには?

シート数の取得はSheetsオブジェクトを使用すると説明しましたが、この方法ではグラフシートまで含めてカウントをします。

純粋にグラフ以外のシートを取得する方法は用意されていないため、「グラフシートを含む総シート数」から「グラフシート」を引くことで求めます。


以下に例を示します。

  Dim cnt As Integer

cnt = Sheets.Count - Charts.Count

MsgBox "シート数:" & cnt

実行例を以下に示します。複数のシートの中からグラフシート以外のシート数を表示していることがわかります。