我正在尝试使用宏为图表对象设置数据集。宏选择了我想要的正确范围(我通过使用 rng.Select 和调试进行检查)但是当我在宏完成运行后右键单击图表对象并选择 Select Data 它说数据范围太复杂而无法显示并且确实未正确填充我的图表。我的宏在下面。任何指针表示赞赏。
编辑。我有一份工作表的副本,其中图表是手动从填充的数据创建的,单击此图表上的选择数据显示非连续范围很好 - 只有在尝试通过宏为预先存在的图表设置它时不起作用。
Sub test()
UpdateChart 27, 64
End Sub
Sub UpdateChart(ByVal row As Long, ByVal col As Long)
Dim sht As Worksheet
Set sht = Worksheets("Report4_Chart")
Dim data As Worksheet
Set data = Worksheets("Report4")
Dim rng As Range
Dim exclude As Range
data.Activate
Set exclude = data.Rows(25)
Set rng = data.Range("A24", Intersect(data.Rows(row), data.Columns(col)))
Set rng = SetDifference(rng, exclude)
rng.Select
sht.Activate
ActiveSheet.ChartObjects("Chart 1").Activate
ActiveChart.PlotArea.Select
ActiveChart.SetSourceData Source:=rng
End Sub