Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » VBAでグラフの軸ラベル・軸タイトルのフォントサイズを

VBAでグラフの軸ラベル・軸タイトルのフォントサイズを

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

「フォントサイズ 変更 vba グラフ 軸ラベル」
といった検索キーワードで、時折アクセスがあります。

Excel VBAで、グラフの軸ラベルのフォントサイズを変更するには、どのようなコードを書けばいいのか探していた方による検索です。

[スポンサードリンク]

軸ラベルのフォントサイズを設定するサンプル

棒グラフや折れ線グラフをアクティブな状態にしておいてから、以下のSubプロシージャを実行してみてください。

Sub 軸ラベルのフォントサイズを設定する()
 Dim ax_cat As Axis
 Set ax_cat = ActiveChart.Axes(xlCategory)
 ax_cat.HasTitle = True
 ax_cat.AxisTitle.Format.TextFrame2.TextRange.Font.Size = 12

 Dim ax_val As Axis
 Set ax_val = ActiveChart.Axes(xlValue)
 ax_val.HasTitle = True
 ax_val.AxisTitle.Font.Size = 8

End Sub

横(項目)軸のラベルが12ポイントに、
  Set ax_cat = ActiveChart.Axes(xlCategory)
  ax_cat.HasTitle = True
  ax_cat.AxisTitle.Format.TextFrame2.TextRange.Font.Size = 12

縦(値)軸のラベルが8ポイントに、
  Set ax_val = ActiveChart.Axes(xlValue)
  ax_val.HasTitle = True
  ax_val.AxisTitle.Font.Size = 8

それぞれ設定されます。

いずれも、Axisオブジェクトに用意されているHasTitleプロパティをTrueに設定しておいてから、
  Set ax_cat = ActiveChart.Axes(xlCategory)
  ax_cat.HasTitle = True
  Set ax_val = ActiveChart.Axes(xlValue)
  ax_val.HasTitle = True

フォントサイズの変更を行っています。
  ax_cat.AxisTitle.Format.TextFrame2.TextRange.Font.Size = 12
  ax_val.AxisTitle.Font.Size = 8

AxisTitle.Fontプロパティは非表示だが存在

ここでは、項目軸の設定を、
  ax_cat.AxisTitle.Format.TextFrame2.TextRange.Font.Size = 12
としていますが、数値軸のように
  ax_cat.AxisTitle.Font.Size = 12
としてもOKです。

最近のExcelでは、AxisTitleオブジェクトのFontプロパティは、オブジェクトブラウザーで非表示に設定されていますが、実は存在しています。

AxisTitle.Fontプロパティが非表示に設定されているのですから、
  AxisTitle.Format.TextFrame2.TextRange.Font.Size = 12
といった深い階層を辿るのが、推奨されていると考えるべきなのでしょう。

しかし、AxisTitleオブジェクトに似たオブジェクトであるTickLabelsについては、Fontプロパティは非表示になっていません。

また、AxisTitle.Format.TextFrame2.TextRangeといった深い階層を辿ることを本気で推奨するのならば、AxisTitle.Textプロパティも非表示設定にして、

軸ラベルの文字列設定をする場合に、
  AxisTitle.Format.TextFrame2.TextRange.Text
を辿るのが統一感は出ると思うのですが、実際にはAxisTitle.Textプロパティは非表示にはなっていません。

こういった現状を見ると、軸ラベルのフォント関連の簡単な設定を行うだけならば、AxisTitle.Fontプロパティを使ってもイイのではないかと、私は考えています。

実務で長く使われる可能性のあるコードでAxisTitle.Textプロパティを利用するかどうかは、各自ご判断ください。

最終更新日時:2021-06-17 14:06

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » VBAでグラフの軸ラベル・軸タイトルのフォントサイズを

TrackBack:0

TrackBack URL

Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » VBAでグラフの軸ラベル・軸タイトルのフォントサイズを

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

検索


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

.