一、尽量使用VBA原有的属性、方法和Worksheet函数
set xx=Nothing
二、尽量减少使用对象引用
set xx=Nothing
每一个 Excel 对象的属性、方法的调用都需要通过 OLE 接口的一个或多个调用,这些 OLE调用都是需要时间的,减少使用对象引用能加快VBA代码的运行
使用With……End With语句,尽量减少对象引用
三、减少对象的激活和选择
set xx=Nothing
如果你的通过录制宏来学习VBA的,则你的VBA程序里一定充满了对象的激活和选择,例如Workbooks(XXX).Activate、Sheets(XXX).Select、Range(XXX).Select 等,但事实上大多数情况下这些操作不是必需的。删除这些代码可加快vba运行速度
四、关闭屏幕更新
vba代码复杂时,关闭屏幕更新是提高VBA程序运行速度的最有效的方法,缩短运行时间2/3左右。
set xx=Nothing
关闭屏幕更新,则执行宏时不会实时看到excel内数据的变化
关闭屏幕更新的方法:
Application.ScreenUpdate = False ‘在过程的最开始写入该代码
请不要忘记VBA程序运行结束时再将该值设回来:
Application.ScreenUpdate = True '在过程的末尾写入该代码
五、退出程序前销毁程序中使用的对象
set xx=Nothing
1.标识符命名规范
(1)字母打头,由字母、数字和下划线组成,如A987b_23Abc
(2)字符长度小于40,(Excel2002以上中文版本等,可以用汉字且长度可达254个字符)
(3)不能与VB保留字重名,如public,private,dim,goto,next,with,integer,single等
2.书写规范
(1)VBA不区分标识符的字母大小写,一律认为是小写字母;
(2)一行可以书写多条语句,各语句之间以冒号 : 分开;
(3)一条语句可以多行书写,以空格加下划线 _ 来标识下行为续行;
(4)标识符最好能简洁明了,不造成歧义。