我是VBA的新手,并尝试在Excel中编写宏代码,自动更新当前电子表格中图表的数据范围,以与活动工作表对应,而不是我创建的模板,我得到了一个非常精彩的运行时错误1004:'应用程序或对象定义错误'我之前使用另一个模板使用此宏,但它已经没有了,因为我更改了范围以适应我正在使用的新模板上的其他图表。抛出异常的行是:
ActiveChart.SeriesCollection(1).XValues = _
"=" + datas + "!$F$2:$F$51"
有关如何解决此问题的任何建议吗?
Sub app_template_data_update()
'
' app_template_data_update Macro
'
'
ActiveSheet.Name = ActiveSheet.Range("K3")
datas = ActiveSheet.Range("K3")
ActiveSheet.ChartObjects("Chart 2").Activate
ActiveChart.Axes(xlValue).MajorGridlines.Select
ActiveChart.SeriesCollection(1).XValues = _
"=" + datas + "!$F$2:$F$51"
ActiveChart.SeriesCollection(1).Values = _
"=" + datas + "!$H$2:$H$51"
ActiveChart.SeriesCollection(2).XValues = _
"=" + datas + "!$F$52:$F$101"
ActiveChart.SeriesCollection(2).Values = _
"=" + datas + "!$H$52:$H$101"
ActiveSheet.ChartObjects("Chart 1").Activate
ActiveChart.Axes(xlValue).MajorGridlines.Select
ActiveChart.SeriesCollection(1).XValues = _
"=" + datas + "!$F$62:$F$219"
ActiveChart.SeriesCollection(1).Values = _
"=" + datas + "!$H$62:$H$219"
ActiveSheet.ChartObjects("Chart 3").Activate
ActiveChart.Axes(xlValue).MajorGridlines.Select
ActiveChart.SeriesCollection(1).XValues = _
"=" + datas + "!$K$57:$K$66"
ActiveChart.SeriesCollection(1).Values = _
"=" + datas + "!$L$57:$L$66"
ActiveSheet.ChartObjects("Chart 4").Activate
ActiveChart.PlotArea.Select
ActiveChart.SeriesCollection(1).Values = _
"=" + datas + "!$O$75,$O$85"
End Sub
答案 0 :(得分:0)
编辑
ActiveChart.SeriesCollection(1).Values = _
"=" + datas + "!$O$75,$O$85"
进入
ActiveChart.SeriesCollection(1).Values = _
"=(" + datas + "!$O$75," + datas + "!$O$85)"