Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » Charts.AddやAdd2で引数Beforeを指定するサンプル

Charts.AddやAdd2で引数Beforeを指定するサンプル

動作検証バージョン:64bit Windows 10 Pro + 32bit Excel(バージョン2110 ビルド14527.20276 Microsoft Store)

「vba charts add before」
という検索キーワードに気が付きました。

Excel VBAの「Charts.Add Before:=〇〇」といったコードについて調べていた方による検索です。

[スポンサードリンク]

最近のExcelでは、下図のとおりCharts.Addメソッドは非表示になっており、

Charts.Add2メソッドの使用が推奨されているように見えますが、

引数Beforeの使い方は同じです。どのシートの前にグラフシートを挿入するかを指定します。引数Beforeに指定されたシートの前に、グラフシートが挿入されます。

Charts.Add・Add2の引数Beforeにはシートを表すオブジェクトを指定

オブジェクトブラウザーの詳細ペインには、

Add([Before], [After], … 

あるいは、

Add2([Before], [After], …

とだけ表示されていて、どの引数にどのようなデータを指定すればいいのか読み取れませんが、BeforeとAfterにはシートを表すオブジェクトを指定します。

Charts.Addメソッドで引数Beforeを指定するサンプル

以下のSubプロシージャを実行すると、Sheets(1)で取得できる先頭シートの前にグラフシートが挿入されます。

Sub ChartsのAddメソッドで引数Beforeを指定する()
 Charts.Add Before:=Sheets(1)
End Sub

Sub ChartsのAdd2メソッドで引数Beforeを指定する()
 Charts.Add2 Before:=Sheets(1)
End Sub

引数BeforeにActiveSheetプロパティを指定

引数BeforeにグローバルメンバーのActiveSheetプロパティを指定した、

Charts.Add Before:=ActiveSheet

あるいは、

Charts.Add2 Before:=ActiveSheet

を実行すると、アクティブシートの前にグラフシートが挿入されます。

引数BeforeにCodeNameを指定

上図のように、オブジェクト名(CodeName)が「Sheet1」のシートがあるときに、

Charts.Add Before:=Sheet1

あるいは、

Charts.Add2 Before:=Sheet1

を実行すると、Sheet1シートの前にグラフシートが挿入されます。

Chartsプロパティの戻り値はSheetsコレクション

ちなみにChartsプロパティの戻り値は厳密には、Chartオブジェクトのみを要素として含むSheetsコレクションです。

ですが、引数Before・Afterについては、ChartsコレクションでもSheetsコレクションでも同じです。そのため、この記事では「Charts.Add」や「Charts.Add2」をChartsコレクションのAdd・Add2メソッドとして解説しています。

Chartsプロパティの戻り値がSheetsである件は、以下のような記事もご覧ください。

最終更新日時:2021-12-16 12:49

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » Charts.AddやAdd2で引数Beforeを指定するサンプル

「グラフ・Chart」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.