如何加快我的宏?

时间:2017-06-05 12:48:14

标签: excel vba excel-vba

我遇到了一个解决日志文件(1GB)的宏的问题。

当然有一些设置如下:

Application.ScreenUpdating = False
Application.DisplayStatusBar = True
Application.Calculation = xlCalculationManual
Application.EnableEvents = False
ActiveSheet.DisplayPageBreaks = False
Application.DisplayAlerts = False
Application.CutCopyMode = False

还有一个通用循环文件行,其中包含DoEvents(以防止excel屏幕冻结)。

问题是当我的鼠标指针悬停在单元格上时,宏非常慢。一旦指针离开excel单元格,宏开始工作速度提高30倍!任何想法为什么会发生这种情况以及如何解决问题?

一种建议的方式是

  

application.visible =假

但在宏运行时看起来好像崩溃了。

1 个答案:

答案 0 :(得分:1)

你绝对可以添加的东西是:

Application.Cursor = xlWait

然后在结尾处将其切换回来

Application.Cursor = xlDefault

这将消除光标闪烁