我已经编写了用于在图中命名系列的vba代码:

 ActiveChart.SeriesCollection(1).name = "SPEC"
 ActiveChart.SeriesCollection(2).name = "manju"

我的问题是我想使用vba代码找到特定的系列名称。
在上面的代码中,我有两个系列。
现在,我想使用vba代码找到系列名称(manju)。

最佳答案

要通过传递名称来访问SeriesCollection(),您可以:

MsgBox ActiveChart.SeriesCollection("manju").Name

这是可能的,因为index中的SeriesCollection(index)实际上是Variant类型,因此,如果要传递String类型并尝试按名称访问它,或者如果要传递Long/Integer(或任何其他数字数据类型)以访问枚举器,则编译器会计算出结果。

或迭代SeriesCollection,将当前名称与“manju”进行比较:
For i = 1 to ActiveChart.SeriesCollection.Count
   If ActiveChart.SeriesCollection(i).name = "manju" Then
      MsgBox "Found it!"
      Exit for
   End if
Next

10-08 11:39