如何用vba返回或设置图表系列的X轴值、Y轴值、气泡大小值?

在vba中图表的Series对象的XValuesValuesBubbleSizes属性分别表示X值、Y值、气泡的大小。

XValues、Values、BubbleSizes属性可以是常量数组,也可以是单元格区域的引用。

XValues、Values、BubbleSizes属性的类型均为Variant型。

当要获取XValues、Values、BubbleSizes属性的值时,要将属性值存储为Variant型的变量。

即使XValues、Values、BubbleSizes是单元格区域的引用,也不能将其赋值给一个Range对象。

如果要获取XValues、Values、BubbleSizes属性可以使用如下的代码:

Sub QQ1722187970()
    '创建内嵌的图表
    Dim oWK As Worksheet
    Set oWK = Sheet1
    Dim oChart As Chart
    Set oChartObject = oWK.ChartObjects(1)
    Set oChart = oChartObject.Chart
    Dim oSeries As Series
    Dim vXV
    Dim vValues
    Dim vBS
    With oChart
        Set oSeries = .SeriesCollection(1)
        With oSeries
            vXV = .XValues
            vValues = .Values
            '如果是气泡图,获取气泡的大小
            vBS = .BubbleSizes
        End With
    End With
End Sub

如果要设置XValues、Values、BubbleSizes的属性值,可以使用如下的代码:

Sub QQ1722187970()
    '创建内嵌的图表
    Dim oWK As Worksheet
    Set oWK = Sheet1
    Dim oChart As Chart
    Set oChartObject = oWK.ChartObjects(1)
    Set oChart = oChartObject.Chart
    Dim oSeries As Series
    Dim vXV
    Dim vValues
    Dim vBS
    With oChart
        Set oSeries = .SeriesCollection(1)
        With oSeries
            .XValues = oWK.Range("a1:a10")
            .Values = oWK.Range("b1:b10")
            '如果是气泡图,设置气泡的大小
            BubbleSizes = oWK.Range("c1:c10")
        End With
    End With
End Sub
       

发表评论