我有很多数据,只需按一下按钮即可通过 Excel 中的连接从 SQL 查询中提取数据。然后我进行一些简单的计算以获得结果。我还有 4 个基于该数据的图表。
我遇到了一个问题,代码需要几分钟才能执行。我相信这是因为在更新数据的同时,图表也在更新。我在删除图表后得出了这个结论,它的速度明显更快。
有没有办法稍微加快这个过程?我可以暂停绘图并在所有数据更新后恢复绘图吗?
谢谢!
最佳答案
您是否考虑过在 vba 中偏移图表区域并在代码末尾切换回来?
您可以这样做Select the Chart Area在 VBA 中。
例如。如果您想绘制范围 A1:A10 中的数据图表,则可以执行以下操作
Charts(1).SetSourceData Source:=Sheets(1).Range("B1:B10")
your logic
Charts(1).SetSourceData Source:=Sheets(1).Range("A1:A10")
这将图表“瞄准”不同的范围,这样它就不会在每次单元格更改后尝试重新计算图表。一旦你的逻辑完成,然后将其“瞄准”回正确的范围。
关于sql - 数据更新时暂停 Excel 图表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30131345/