兩句代碼快速提高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紙打印長圖片?


分享到:


相關文章: