VBA代码提速方法:解决EXCEL VBA运行速度慢的问题

标签:
杂谈 |
VBA代码提速方法:解决EXCEL VBA运行速度慢的问题
相信大家在运行Excel VBA的时候都遇到过代码运行速度慢的问题,这一方面是由于VBA是基于Excel对象的语言,很多操作都是面向Excel的操作,而非在数组中进行,另一方面在写程序时技巧不足,导致VBA代码运行效率低。下面介绍几个可以提高EXCEL VBA代码运行速度的方法:
1. 在VBA过程程序的首尾分别加下面两句话
application.ScreenUpdating=False ‘加在程序开始
application.ScreenUpdating=true ‘加在程序结束
这两句话的意思分别是关闭屏幕刷新和打开屏幕刷新,是最快最有效提升Excel
2. 减少循环,增加判断
代码并非越长运行速度越慢,有些代码看似简单,但多层循环嵌套华而不实,运行起来速度非常慢。所以建议尽量减少循环,尤其是嵌套循环。
3. 让电脑判断数值
电脑在判断数值的时候总是快于直接的字符,比如你要判断一个单元格A<>”",可以改为len(单元格A)<>0即可。
4. 尽量用vba语言
刚开始写VBA代码时,大家会习惯使用EXCEL中的函数,worksheetfunction什么什么的,使用起来简短熟悉,但普遍来讲,VBA对这种调用的效率偏低,所以建议使用VBA自己语言,当程序运行量很大时效果非常明显。
5. 减少数组redim次数
在内存无忧的情况下,可以使用固定数组定义方法。
6. 终极建议
就一句话:一切处理过程都放在数组中进行。
好了,以上是我对于提升EXCEL VBA运行效率的一点经验分享,大家可以尝试哈。代码不怕长,参数不怕多,主要是循环要少,最后记得考虑自己的内存空间。