我正在尝试从Excel图形中删除所有空系列。

    Dim isEmptySeries As Boolean
    For Series = 1 To .SeriesCollection.count
        .SeriesCollection(Series).ApplyDataLabels Type:=xlDataLabelsShowValue, AutoText:=True, LegendKey:=False
        isEmptySeries = True

        For i = 1 To .SeriesCollection(Series).points.count
            If .SeriesCollection(Series).points(i).DataLabel.Text = 0 Then
                .SeriesCollection(Series).points(i).HasDataLabel = False
            Else
                isEmptySeries = False
                .SeriesCollection(Series).points(i).DataLabel.Font.Size = 17
            End If
        Next i

        If isEmptySeries Then
                .SeriesCollection(Series).Delete
        End If
    Next Datenreihe


该脚本在ApplyDatalabels行处失败(“对象图表的方法系列收集失败”)。
我相信删除系列之一时Excel会移动系列索引吗?是这样吗这是我对此错误的唯一解释。

我还要如何遍历该系列并删除那些空的系列?

最佳答案

在这种情况下,请尝试以相反的顺序循环

For i = .SeriesCollection(Series).points.count To 1 Step -1


这样,.Delete不会影响尚未循环通过的项目

关于excel - 从图形中删除空系列(使用VBA),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7875326/

10-10 18:55