基于VBA中的可变单元格范围设置图表源数据

Ahm*_*udi 6 excel charts vba excel-vba

我正在创建一个报告模板,其中一部分将生成具有类似于移动平均值的结构的数据图表

为此我需要在一个工作表中选择一系列数据(例如f10:i14)并放置并将其设置为一个图表的来源

以下代码可行

ActiveChart.SetSourceData Source:=Sheets("Weekly Trends").Range("f10,i14")

但事实并非如此

ActiveChart.SetSourceData Source:=Sheets("Weekly Trends").Range(Cells(x, y), Cells(k, z))

它返回一个 1004 error

但是我需要根据报告的目的为变量索引指定范围,请帮忙

Sid*_*out 14

您必须完全限定.Cells对象

试试这个

ActiveChart.SetSourceData Source:=Sheets("Weekly Trends").Range(Sheets("Weekly Trends").Cells(x, y), Sheets("Weekly Trends").Cells(k, Z))

您也可以缩短上述代码

With Sheets("Weekly Trends")
    ActiveChart.SetSourceData Source:=.Range(.Cells(x, y), .Cells(k, Z))
End With
Run Code Online (Sandbox Code Playgroud)