在VBA中更改ChartObject的x轴

时间:2012-09-05 09:04:37

标签: excel vba excel-vba charts

如果我想将我的x轴更改为G5:G105范围内Chart 2以上的数据,那么我将其放入我的VBA子程序中:

ActiveSheet.ChartObjects("Chart 2").Activate
ActiveChart.SeriesCollection(1).XValues = "='Q1'!$G$5:$G$105"

如何使其具有固定$G$5:$G$105的任意范围INSTEAD。我试过用

ActiveChart.SeriesCollection(1).XValues = "='Q1'!Range("G5").Resize(I, 1)"

其中I是在子例程的前一部分中定义的某个Integer变量。

然而它不起作用。

1 个答案:

答案 0 :(得分:2)

我担心你的范围"='Q1'!Range("G5").Resize(I, 1)"是字符串和代码的非法混合。请尝试此范围:Range("Q1!G5").Resize(i, 1)

完整示例:

Option Explicit

Sub ChartTest()

    Dim i As Integer

    i = 2

    ActiveSheet.ChartObjects("Chart 2").Activate
    ActiveChart.SeriesCollection(1).XValues = Range("Q1!G5").Resize(i, 1)

End Sub