两句代码快速提高VBA运行效率

问题需求

来自公号粉丝,有1000多条数据,如下图,需要按照客户名称拆分成单独的工作簿(workbook),代码别人已经写好了,但是一运行发现,需要运行的时间太长了(足足有6分来钟)。Ta咨询我能否有方法可以提高效率?

两句代码快速提高VBA运行效率

解决办法

大致看了下源代码,几十行,如下图,瞬间就感觉这个case有点大,一行行看、改代码可能会比较费时。

两句代码快速提高VBA运行效率

当然,通过优化算法,肯定会有方法修改其中的代码,提升运算效率。但是这个过程会比较枯燥、费时。

其实完全可以试试加入下面的这两条代码:

Application.ScreenUpdating = False(程序开始)
Application.ScreenUpdating = True(程序结束)

这两条代码用处是不显示代码的运行过程,只显示最终的结果。说的简单一些,就是只看结果,具体过程计算机后台处理即可。

两行代码分别是用在程序开始和结束的时候,看看结果:

以上面这个为例,永恒君缩减为100行,未加入代码的运行时间为:14.8s

两句代码快速提高VBA运行效率

加入之后为:9.8s

两句代码快速提高VBA运行效率

缩短了约30%多的时间。

实际上,这两行代码在任何一个vba程序中都可以使用,尤其是数据量比较大的时候,效果会更加的明显。

你可能还会想看这些往期精彩:


一款实用的图片查重工具


三个有趣实用的工具,你一定会想试试!


五款在线图片处理工具,告别图片荒,图片难


闹图慌?百度谷歌图都用烂大街了?尝试一下这些无版权高质量图片网站吧!


如何查看图片是否PS过?


如何神不知鬼不觉地把图片藏到学习资料里


教你用word一键自动去除图片背景


实用技巧:教你如何分页多张A4纸打印长图片?


分享到:


相關文章: