VBA循环遍历所有图表中的所有系列

我遇到了在我的VBA代码中循环几个图表的问题。 我99.7%肯定这是一个非常简单和快速的解决scheme,但我的大脑今天不工作。

我希望代码遍历ActiveSheet上的每个图表,并且对于图表包含的每个数据系列,我都希望它添加系列的最后一个值。 在我的例子中,我有9个图表,每个图表有3个系列(必然要改变,有些有2个,但我离题)。

我有以下代码

Sub AddLastValue() Dim myChartObject As ChartObject Dim myChart As Chart Dim mySrs As Series Dim myPts As Points With ActiveSheet For Each myChartObject In .ChartObjects For Each myChart In .Chart For Each mySrs In .SeriesCollection Set myPts = .Points myPts(myPts.Count).ApplyDataLabels Type:=xlShowValue Next Next Next End With End Sub 

如果我删除循环代码,只是做一个

 Set myPts = ActiveSheet.ChartObjects(1).Chart. _ SeriesCollection(1).Points myPts(myPts.Count).ApplyDataLabels type:=xlShowValue 

然后,它适用于特定的图表和系列,所以我很积极,这是循环,我搞砸了。

有人能告诉我在哪里搞乱循环代码吗?

尝试下面的代码:

 Sub AddLastValue() Dim myChartObject As ChartObject Dim mySrs As Series Dim myPts As Points With ActiveSheet For Each myChartObject In .ChartObjects For Each mySrs In myChartObject.Chart.SeriesCollection Set myPts = mySrs.Points myPts(myPts.Count).ApplyDataLabels Type:=xlShowValue Next Next End With End Sub