【发布时间】:2019-10-02 21:27:49
【问题描述】:
我有一个存在性能问题的大型 Excel 模板。我想优化我用来修改单元格的 VBA 代码,使其更像是一种“一次性”的方法。我有几个使用循环来修改值的基本功能。这是一个例子:
Dim aCell as Range
For Each aCell In Range("A1:A9999").Cells
'appends prefix to value of each cell
aCell.Value = "CC_" & aCell.Value
Next aCell
虽然这可行,但这样做的缺点是会导致多次重新计算和更新,从而减慢模板速度。我熟悉打开和关闭计算/屏幕更新,但由于我不会讨论的原因,这不是一个选项。
下面的代码确实不工作,但这是我正在寻找的方法。有没有办法使用数组或其他我没有想到的工具来进行这样的更改,这会最大限度地减少模板计算更新?
Range("A1:A9999").Value = "CC_" & Range("A1:A9999").Value
谢谢!
【问题讨论】: