チャートのシリーズをループし、最大値/最小値に応じて最大値/最小値のラベルのみを表示するマクロを作成しようとしています。
一部のシリーズは負の値しか持たず、これらの場合、最小データポイント ラベルのみを表示したいと考えています。また、0 以上の値を持つシリーズについても同様です。
私がこれまでに持っているコードは次のとおりです。
Sheets("Curve").ChartObjects("Chart 14").Activate
For Each serie In ActiveChart.SeriesCollection
Dim pointCount As Integer
Dim pointValues As Variant
pointCount = serie.Points.Count
pointValues = serie.Values
For pointIndex = 1 To pointCount
If pointValues(pointIndex) < 1000 Then
serie.Points(pointIndex).HasDataLabel = True
End If
Next pointIndex
Next serie
End Sub
しきい値を手動で入力すると問題なく動作しますが、代わりに「1000」を Max(series) 値に置き換えて、チャートの各シリーズに表示されるラベルが 1 つだけになるようにします。