用箭头来指示使用VBA的特殊点

我已经看到了一些使用箭头来表示Excel图表上的特殊点的例子。 但是我想用VBA来达到这个目的。 例如,如果图表上的某个点大于90,则显示与该点相对应的箭头。

请build议我应该如何在VBA中进行操作。 任何帮助,将不胜感激。

更新

除了仅仅改变点颜色之外,还有其他什么好的build议可以使这一点更加突出。

更新2

现在我正在使用这个代码。

For Each oCell In Range("e4:e" & LastRow) 'loop If oCell.Value < sd13 Then 'rule 13s Range("V4").Value = "Rule 13s voilated!" Range("V4:w4").Interior.Color = RGB(255, 0, 0) ActiveWorkbook.Sheets("LDL-C").ChartObjects("Chart 1047").Chart.SeriesCollection(1).Points(j).MarkerBackgroundColor = RGB(255, 0, 0) End If Next 

不知道如何用箭头做这个,但是这是一个改变兴趣点颜色的方法:

  With ActiveSheet.ChartObjects(ChartName).Chart.SeriesCollection("NCDs") For currentPoint = 1 To .Points.Count If Range("G" & currentPoint + 34).Value = True Then With .Points(currentPoint).Format .Fill.BackColor.RGB = RGB(50, 150, 50) .Fill.ForeColor.RGB = RGB(50, 150, 50) .Line.ForeColor.RGB = RGB(50, 150, 50) End With Else With .Points(currentPoint).Format .Fill.BackColor.RGB = RGB(150, 50, 50) .Fill.ForeColor.RGB = RGB(150, 50, 50) .Line.ForeColor.RGB = RGB(150, 50, 50) End With End If Next currentPoint End With 

只需更改名称和条件子句…也许.Points(currentPoint)对象具有x,y位置属性,您可以使用它来定位您的箭头。 不知道这个,但它似乎是一个很好的起点。

除了仅仅改变点颜色之外,还有其他什么好的build议可以使这一点更加突出。

这会有帮助吗?

 With ActiveChart For i = 1 To .SeriesCollection.Count a = .SeriesCollection(i).Values For l = 1 To .SeriesCollection(i).Points.Count If mymax < a(l) Then mymax = a(l) .SeriesCollection(i).DataLabels.Select Selection.Format.Line.Visible = msoTrue Selection.Format.Line.Visible = msoFalse .SeriesCollection(i).Points(l).DataLabel.Select .SeriesCollection(i).Points(l).Select .SeriesCollection(i).DataLabels.Select .SeriesCollection(i).Points(l).DataLabel.Select With Selection.Format.Line .Visible = msoTrue .ForeColor.ObjectThemeColor = msoThemeColorAccent1 .ForeColor.TintAndShade = 0 .ForeColor.Brightness = 0 End With With Selection.Format.Line .Visible = msoTrue .Weight = 2 End With End If Next l Next End With 

快照

在这里输入图像说明

另一个快照

在这里输入图像说明