我的宏从几张纸上获取x和y坐标,并将它们绘制在图表上,所有这些都在同一工作簿中。该代码运行得很好,几乎可以立即在第一张工作表上绘制数据图表,但是将其他工作表中的数据添加到图表中实际上要花费几分钟。有人可以建议为什么需要这么长时间才能运行,以及我可以如何加快运行速度?谢谢!
代码首先创建一个名为“ Chart”的工作表,然后将x和y数据从名为“ Cluster 1”的工作表绘制到图表上。这是几乎立即运行的部分。然后,代码从名为“ Cluster 2”,“ Cluster 3”等的工作表中获取x和y数据。这是需要几分钟才能运行的部分。
Public Sub MakeClusterChart()
Application.ScreenUpdating = False
Sheets.Add.Name = "Chart"
Sheets("Chart").Select
ClusterPtr = 1
Sheets("Cluster " & ClusterPtr).Select
Columns("A:B").Select
ActiveSheet.Shapes.AddChart2(240, xlXYScatter).Select
ActiveChart.SetSourceData Source:=Range("'Cluster " & ClusterPtr & "'!$A:$B")
ActiveChart.Location Where:=xlLocationAsObject, Name:="Chart"
For ClusterPtr = 2 To NumClusters
ActiveChart.SeriesCollection.NewSeries
ActiveChart.FullSeriesCollection(ClusterPtr).XValues = Range("'Cluster " & ClusterPtr & "'!$A:$A")
ActiveChart.FullSeriesCollection(ClusterPtr).Values = Range("'Cluster " & ClusterPtr & "'!$B:$B")
Next
Application.ScreenUpdating = True
End Sub