用vba处理图表,经常需要处理图表的系列。
在vba中图表的系列有Series、SeriesCollection、FullSeriesCollection等3个对象。
这3个对象有点类似,但是又有区别,其中
Series对象表示图表中每个独立的系列。
SeriesCollection、FullSeriesCollection对象均表示图表中的所有系列集合,但是SeriesCollection对象只能表示所有可见的图表系列,FullSeriesCollection对象除了包含可见的图表系列,还保护筛选隐藏的图表系列。
当要删除某个系列时,可以用具体的Series对象的Delete方法。
以下是一个示例代码:
Sub QQ1722187970()
'创建内嵌的图表
Dim oChart As Chart
Dim oWK As Worksheet
Dim oChartObject As ChartObject
Set oWK = Excel.Worksheets(1)
iRow = oWK.Range("a65536").End(xlUp).Row
Dim oSeries As Series
Dim oSC As SeriesCollection
Dim oFSC As FullSeriesCollection
'先创建一个空白的图形壳
Set oChartObject = oWK.ChartObjects.Add(100, 0, 500, 300)
Set oChart = oChartObject.Chart
'对空白的图形进行设置
With oChart
.ChartWizard Source:=oWK.Range("c2:e" & iRow), gallery:=xlBubble3DEffect, PlotBy:=xlColumns, HasLegend:=False
iCount = .FullSeriesCollection.Count
If iCount > 1 Then
For i = .FullSeriesCollection.Count To 2 Step -1
.SeriesCollection(i).Delete
Next i
End If
End With
End Sub


发表评论