第二次打开后,Excel非常慢

时间:2012-11-09 15:06:38

标签: performance excel vba

我有一个带有大量宏的Excel工作簿。

如果我有Excel App。完全关闭,我打开它,运行正常。

但是,如果我关闭工作簿(没有关闭excel应用程序。),然后再次打开它,打开时会有很大的延迟,同时还会运行所有不同的宏。

我没有在开始或在后台运行任何东西。事实上,我已经在这本工作簿上写了一个标志Workbook_Open例程.... 只是为了达到这一点(workbook_open事件)它需要超过20秒!还没有宏运行了!

总而言之,如果从头开始(excel应用程序未运行),则需要2-3秒才能打开并准备好工作簿。 一切都很快(宏等)......

然后我关闭工作簿...... 如果再次打开(Excel已经运行)需要15-50秒。 基本上工作时(宏运行等)需要x 10更长的时间

如果我关闭Excel应用。完全再打开它,它再次运行良好(第一次)

我想也许工作簿有一些影响内存的东西,第二次打开它会影响它... 但我不知道,这只是猜测...

有没有人经历过这个?

1 个答案:

答案 0 :(得分:3)

谢谢Jook ......你发给我正确的轨道,我解决了问题......

我根据您提到的“内存泄漏”进行了Google搜索,并找到了一些建议set xxx=nothing

的重要性的链接

我不认为这是一个很大的问题,从来没有想过会导致这样的延迟(事实上我有很多其他的宏/工作簿,从来没有遇到过这个问题)

令人难以置信的是,缺少set xxxx=nothing

我查看了在workbook_open事件上运行的所有代码。 我确定设置xxx =没有设置所有(我发现两个丢失)

虽然它不会影响程序正常运行(第一次打开),但关闭它并再次重新打开时,就会出现问题!怪异。

但是现在感谢你了!

我希望此帖可以帮助其他人