Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » VBAでグラフの第2軸を追加する

VBAでグラフの第2軸を追加する

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

「VBA 第2軸」
のような検索キーワードで、このサイト『インストラクターのネタ帳』へ時折アクセスがあります。

Excel VBAを使ってグラフの第2軸を追加するにはどのようなコードを書けばいいのかを、探していた方による検索でしょうか。

第2軸を追加するサンプルマクロ

簡単なサンプルを実行してみましょう。

第2軸を追加する前のグラフ

上図のようなグラフがアクティブな状態で、以下のSubプロシージャを実行してください。

Sub 第2軸を表示する()
 ActiveChart.SeriesCollection("合計").AxisGroup = xlSecondary
End Sub

下図のように、系列「合計」が、第2軸を使ってプロットされた状態に変化します。

第2軸が追加された後のグラフ

「Series.AxisGroup = xlSecondary」で第2軸を追加できる

データ系列を表すSeriesオブジェクトに用意されているAxisGroupプロパティに、

Excel.Series.AxisGroup

XlAxisGroup列挙型に定義されている定数xlSecondaryを設定することで、

Excel.XlAxisGroup.xlSecondary

そのSeriesの系列が第2軸に設定されます。

ネット上では、定数xlSecondaryを使わない、

ActiveChart.SeriesCollection("合計").AxisGroup = 2

のようなコードもよく見かけますけれど、定数が用意されているのですから、

ActiveChart.SeriesCollection("合計").AxisGroup = xlSecondary

を使うことを私はおすすめします。

Series.AxisGroup = xlSecondaryで第2軸が表示されない場合

上述の、

ActiveChart.SeriesCollection("合計").AxisGroup = xlSecondary

を実行しても、第2軸が表示されることもエラーも発生しないこともあります。

一旦、第2軸を表示したあとに、その第2軸を削除したような場合です。

その場合には、

Excel.Chart.HasAxis

上図のようなChart.HasAxisプロパティを使ったコード

ActiveChart.HasAxis(xlValue, xlSecondary) = True

を実行してください。

最終更新日時:2022-07-13 14:16

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » VBAでグラフの第2軸を追加する

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

検索


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

.