2017-06-05 54 views
-1

我的宏解析日志文件(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 =假

但它看起来像崩溃的Excel宏运行时。

+4

帮助我们的帮助你,**发布你的当前代码。** –

+1

我的猜测是在内存中执行它(即在一个ar而不是通过纸张读取。但是正如Gary所说,在我们看到一些代码之前,我们之中没有人会有线索 – Tom

+0

@ Gary的学生: 不幸的是,出于安全原因是不可能的。此外还有1k行代码。我唯一可以提供的是屏幕录像(请看看状态栏)。 https://vimeo.com/220304328 – sku144

回答

1

东西你绝对可以补充的是:

Application.Cursor = xlWait

然后切换回末

Application.Cursor = xlDefault

这将摆脱光标闪烁

+0

这解决了我的问题,非常感谢! – sku144