対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016
「vba グラフシートの有無を調べる」
「vba グラフシートが存在するか判断」
といった検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。
グラフシートが存在しているかをVBAで調べるには、どのようなコードを書けばいいのかを探している方による検索です。
[スポンサードリンク]
グラフシートの有無を判定するサンプルマクロ
以下のようなマクロで、アクティブなブックにグラフシートが存在するかどうかを判定できます。
Sub グラフシートの有無を確認する()
If Charts.Count = 0 Then
MsgBox "グラフシートは存在しません。"
Else
MsgBox "グラフシートは、あります!"
End If
End Sub
If Charts.Count = 0 Then
MsgBox "グラフシートは存在しません。"
Else
MsgBox "グラフシートは、あります!"
End If
End Sub
Chartsプロパティで取得した、Chartオブジェクトだけを単独のオブジェクトとして含むSheetsコレクションのCountプロパティを調べれば、グラフシートが存在しているかどうかはわかります。
存在していなければCountプロパティは0を返してきます。
サンプルマクロで利用しているオブジェクトモデル
上記のマクロで利用しているオブジェクトモデルは以下のとおりです。
Applicationオブジェクト
└Workbookオブジェクト
└Sheetsコレクション(Chartオブジェクトだけを含む)
└Countプロパティ
Chartsプロパティはグローバルなメンバーですから、上位のオブジェクト式を省略しています。
最終更新日時:2020-06-11 15:47
[スポンサードリンク]
Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » VBAでグラフシートの有無を判定する