我正在尝试使图表在VBA中动态更改其范围。我有一个定义的名称(名为“数据”),它可以很好地获得范围,但我希望它被翻译成VBA以便能够分发宏。
定义名称:
=OFFSET(Chart!$A$2,0,0,COUNTA(Chart!$A:$A)+1,COUNTA(Chart!$2:$2)+1)
我到目前为止的VBA代码:
ActiveSheet.ChartObjects("Chart 1").Activate
ActiveChart.SetSourceData Source:=Range("Data")
代码与我到目前为止的工作方式一致,但我正试图找到一种不使用已定义名称的方法。
编辑:我刚刚录制了一个宏,我添加了名称,并保持我的代码相同。谢谢大家的帮助!
答案 0 :(得分:1)
这是一种定义范围并将其用作源的方法:
Dim myRange As Range
Set myRange = [Data]
ActiveChart.SetSourceData Source:=myRange
或者您可以“手动”传递范围:
ActiveChart.SetSourceData Source:=Worksheets("MyNameIsSlim").Range("A1:B10")