更改图表excel VBA中的点颜色

我有这个图表,如果图中的任何一点超过了特定的限制,那么它的颜色应该改变。

在这里输入图像说明

任何人都可以build议我如何获得在VBA的图表,然后应用这种条件,例如我想改变上面的图中最高点的颜色。 任何帮助将不胜感激。

使用: ActiveWorkbook.Sheets("Sheet1").ChartObjects("Chart1").Chart.SeriesCollection(1)

每个点的颜色是.Points(PointNumber).Interior.Color

你必须循环的点数是.Points.Count

每个点的值是.Points(PointNumber).Value

标记本身的颜色(仅适用于线,分散和雷达图表):

 .Points(PointNumber).MarkerBackgroundColor = RGB(0,255,0) ' green .Points(PointNumber).MarkerForegroundColor = RGB(255,0,0) ' red .Points(PointNumber).MarkerStyle = xlMarkerStyleCircle ' change the shape 

让我们采取另一种方法,不需要任何代码。

假设你的数据是在A(序列号或时间)和B值中,从A2和B2开始,因为你的标签在A1和B1中。 我们将在图表中添加一个包含列B中任何exception值的图表。这个系列将在任何exception点前面绘制一个标记,以便原始点仍然存在,而不是重新设置这一点,新的系列会显示点。

在C1单元格中input“Deviant”。

在单元格C2中,input检测exception点的公式,如下所示:

= IF(AND(B2> UPPERLIMIT,B2

如果B列超过上限和下限,则将该值存入列C,否则将#N / A放入C列,#N / A不会导致绘制点。

复制C列中的数据,select图表,然后selectselect性粘贴作为新系列。 格式化这个系列没有线和任何明显的标志,你想用来表示失控点。