Excel VBA脚本编译错误“过程太大”

我花了整整一个晚上做了一连串的Excel VBA脚本的“NG”结果,只是遇到了编译错误“程序太大”的重复问题。

因此,我想分享我的故事和解决scheme,如果您有更好的想法,也很乐意听取您的意见。

我在Visual Basic中debugging,发现通过删除以下行,问题已解决:

ActiveWindow.ScrollRow = 10 ... ActiveWindow.ScrollRow = 10000 

我意识到,因为我的logging有超过10k行,所以Macro也将其中的每一个mousescrolls或者键盘向下滚动作为一个额外的macros命令。 因此,由于多个向下滚动,它阻碍了macros的内存限制。 所以,通过简单地删除与“ActiveWindow.ScrollRow”相关的所有行来解决问题。

我想如果我使用了一个更新的MS版本或更强大的Mac将会有所帮助。 欢迎提出有关Macrologging如何更好地完成的build议,特别是需要向下滚动以捕捉深层行。 请注意,我没有select整个列(通过单击列标题),以避免触及行的最大限制(因此增加了不必要的CPU负载…我猜)。 对于像2013年那样使用新版Office的人来说呢……就macros而言,值得升级吗?