Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » データラベルを値によって非表示にするExcelマクロ

データラベルを値によって非表示にするExcelマクロ

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

「vba グラフ データラベル ある値以下は非表示」
という検索キーワードでアクセスがありました。

データラベルを条件によって非表示にするサンプルマクロ

下図のように、

全データ系列の全データ要素に、値のみのデータラベル表示されているときに、以下のExcelマクロを実行してください。

Sub 指定した値以下のデータラベルを非表示にする()
 Const MAX_VAL = 300

 Dim srs As Series
 For Each srs In ActiveChart.SeriesCollection

  Dim pnt As Point
  For Each pnt In srs.Points
   If pnt.DataLabel.Text <= MAX_VAL Then
    pnt.HasDataLabel = False
   End If
  Next pnt

 Next srs
End Sub

下図のように、定数MAX_VALで指定した300以下のデータラベルが非表示になります。

サンプルマクロで行っている処理

アクティブなグラフの全データ系列に対するFor Each~Nextループの中で、

Dim srs As Series
For Each srs In ActiveChart.SeriesCollection

各データ系列の全データ要素に対するFor Each~Nextループを使用することで、

 Dim pnt As Point
 For Each pnt In srs.Points

全てのデータ要素を順番に取得しています。

取得したデータ要素のデータラベルに表示されている文字列が、定数MAX_VALに指定されている値以下だったときに、

  If pnt.DataLabel.Text <= MAX_VAL Then

そのデータ要素のデータラベルを非表示にしています。

   pnt.HasDataLabel = False

最終更新日時:2022-07-05 20:24

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » データラベルを値によって非表示にするExcelマクロ

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

検索


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

.