作者:iamlaosong
发现一个现象,当Application.Calculation为自动计算状态时,如果工作表中存有公式,2003版似乎并不降低VBA的运行速度,但2007版则影响很大,速度降低的特别明显,尤其是数据量大,又含有数组公式或者大量使用vlookup、match之类的函数时,速度降低的令人难以忍受。为此,必须将Application.Calculation状态改为人工模式,等运行结束再还原。另一个影响VBA速度的因素是屏幕刷新,为提高速度,可以临时关闭屏幕刷新。即:
VBA通常在程序开始加两句:
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
在结尾处再恢复:
Application.Calculation =