• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
2020-10-10
博客园    首页    新随笔    联系   管理    订阅  订阅
vba 提高Excel中VBA的运行效率

一、尽量使用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)标识符最好能简洁明了,不造成歧义。

posted on 2025-03-13 11:08  `冻米糖  阅读(49)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3