我想使用宏更新现有图表中的范围。我的数据将始终从同一行开始,但是随着添加新数据(例如$ AK $ 15,$ AK $ 16)而将继续增长。我知道这可以通过使用动态图表来完成,但是有人要求我通过VBA来完成。我的代码如下:
ThisWorkbook.Worksheets("Overview - Tier 1").Activate
ActiveSheet.ChartObjects("Chart 7").Activate
ActiveChart.SetSourceData Source:=Worksheets("Graph Data - Tier 1").Range("$AI$9:$AK$14")
我尝试如下修改我的代码,但是它不起作用(我遇到运行时错误1004:应用程序定义的错误或对象定义的错误)
ThisWorkbook.Worksheets("Overview").Activate
Dim LastRow As Long
LastRow = Worksheets("Graph Data").Range("$AI$9" & Rows.Count)
ThisWorkbook.Worksheets("Overview").Activate
ActiveSheet.ChartObjects("Chart 7").Activate
ActiveChart.SetSourceData Source:=Worksheets("Graph Data").Range("$AI$9::$AK$14 & LastRow")
答案 0 :(得分:0)
这可能会有所帮助:
Option Explicit
Sub test()
Dim LastRow As Long
With ThisWorkbook.Worksheets("Graph Data")
LastRow = .Cells(.Rows.Count, "AI").End(xlUp).Row
End With
With ThisWorkbook.Worksheets("Overview")
.ChartObjects("Chart 7").Chart.SetSourceData Source:=Worksheets("Graph Data").Range("AI9:AK" & LastRow)
End With
End Sub