動作検証バージョン:64bit Windows 10 Pro + 32bit Excel(バージョン2203 ビルド15028.20160 Microsoft Store)
「vba グラフ データラベル ある値以下は非表示」
という検索キーワードでアクセスがありました。
データラベルを条件によって非表示にするサンプルマクロ
下図のように、
全データ系列の全データ要素に、値のみのデータラベル表示されているときに、以下のExcelマクロを実行してください。
Sub 指定した値以下のデータラベルを非表示にする()
Const MAX_VAL = 300
End 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
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マクロ