Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » 系列要素単位のデータラベルフォント操作をVBAで行う

系列要素単位のデータラベルフォント操作をVBAで行う

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

系列単位でデータラベルのフォント設定を行うExcel VBAのコードについて解説しました。

系列単位ではなく、系列の要素単位でも、データラベルのフォント操作は可能です。

データラベルのフォント設定を系列要素単位で行うサンプル

データラベルの表示されているグラフがアクティブな状態で以下のSubプロシージャを実行すると、1つ目の系列の1つ目の要素のデータラベルのフォントが18ポイントに設定されます。

Sub 系列要素のデータラベルのフォントサイズを設定する()
 ActiveChart _
  .SeriesCollection(1).Points(1).DataLabel _
   .Format.TextFrame2.TextRange.Font.Size = 18
End Sub

Chart.SeriesCollectionメソッドの引数に「1」を指定することで取得した、

.SeriesCollection(1).Points(1).DataLabel _

1つ目の系列を表すSeriesオブジェクトに用意されているPointsメソッドの引数に

「1」を指定して取得した、

.SeriesCollection(1).Points(1).DataLabel _

1つ目の系列の1つ目の要素を表すPointオブジェクトのDataLabelプロパティを使って

.SeriesCollection(1).Points(1).DataLabel _

系列要素のデータラベルを表すDataLabelオブジェクトを取得し、

フォントサイズを設定しています。

「.Format.TextFrame2.TextRange.Font.Size」の部分は、ご紹介済みの系列単位でデータラベルのフォント設定を行う場合と同じです。

単独のデータラベルのフォントサイズを設定するサンプル

以下のようなコードでも、1つ目の系列の1つ目の要素のデータラベルのフォント設定ができます。

Sub 単独のデータラベルのフォントサイズを設定する()
 ActiveChart _
  .SeriesCollection(1).DataLabels(1) _
   .Format.TextFrame2.TextRange.Font.Size = 18
End Sub

結果的には同じですが、先ほどとは辿っているオブジェクトの階層構造が異なります。

先ほどのDataLabelオブジェクトを取得するコードは、

.SeriesCollection(1).Points(1).DataLabel

と、1つ目の系列の、1つ目の系列要素を表すDataLabelオブジェクトを取得しています。
それに対し、

.SeriesCollection(1).DataLabels(1)

と、SeriesオブジェクトのDataLabelsメソッドの引数に「1」を指定することで、

単独のデータラベルを表すDataLabelオブジェクトを取得しています。

最終更新日時:2022-07-15 16:34

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » 系列要素単位のデータラベルフォント操作をVBAで行う

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

検索


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