确定Excel VBA中某个点的值

我试图让图表中的点如果在特定值范围内(即,> 1为绿色,<1为红色,其他为蓝色)则会改变颜色。 我无法确定如何让VBA给我任何给定点的价值。

在这个线程 ,以前的答案,答案(非常有用的其他方式)表明points(num).value将返回在该点的值。 但是,我收到一个错误消息,这样做,无处在线或在VBA的帮助,我可以find一个相应的方法。 有没有其他人有这个成功?

以下是代码片段给我带来的麻烦:

For Count = 1 To 7 If Worksheets("Sheet1").ChartObjects("ChartName").Chart.SeriesCollection(1).Points(Count).Value > 1 Then '... do stuff 

由于数据存储在数据集中的方式,直接从图表中获取值肯定会更好。 我可以找出使用数据集本身的解决方法,但我宁愿避免这种情况。

 Sub Tester() Dim cht As Chart, s As Series, p As Point Dim vals, x As Integer Set cht = ActiveSheet.ChartObjects(1).Chart Set s = cht.SeriesCollection(1) vals = s.Values For x = LBound(vals) To UBound(vals) If vals(x) > 10 Then With s.Points(x) .MarkerBackgroundColor = RGB(255, 0, 0) .MarkerForegroundColor = RGB(255, 0, 0) End With End If Next x End Sub