ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: yuanzhuping

VBA常用技巧代码解析

    [复制链接]

TA的精华主题

TA的得分主题

发表于 2009-6-23 13:53 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖已被收录到知识树中,索引项:开发帮助和教程
这样的好帖,不赞一下有辱人格!

TA的精华主题

TA的得分主题

发表于 2009-6-23 14:13 | 显示全部楼层
收到,向楼主致敬

TA的精华主题

TA的得分主题

发表于 2009-6-23 14:57 | 显示全部楼层

感谢涕零!!

楼主万岁!!!
一直以来,额都想学习VBA,但几次均无果而终,因为之前的教程都不是循序渐进的,而是一开始就弄些大程序,搞得额晕头涨脑,但是yuanzhuping先生此讲,使我仅用半天的时间就学会了许多,能够入门了,知道怎样继续学习了,真是好,真是感谢!!!

TA的精华主题

TA的得分主题

发表于 2009-6-23 15:41 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
谢谢!无私的奉献!!!!

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-6-23 16:44 | 显示全部楼层

第11部分 其他应用

技巧189         保护VBA代码
       VBA项目的源代码是完全开放的,如果不希望其他人看到源代码,可以使用以下两种方法将代码保护起来。
189-1        设置工程密码
       设置VBA工程的密码,只有在输入正确密码后才能看到源代码。
       在VBE窗口中单击菜单“工具”→“VBAProject属性”,在显示的“VBAProject—工程属性”对话框的“保护”选项卡中选中“查看时锁定工程”复选框,并在“密码”文本框和“确认密码”文本框中输入密码后单击“确定”按钮关闭该对话框,保存并关闭文件。
       Snap1.jpg
       密码保护完成后,当试图打开该工程时会显示“VBAProject密码”的对话框,只有在输入正确的密码后才能看到该工程的源代码。
       Snap2.jpg

189-2        设置“工程不可查看”
       使用“保护并共享工作簿”功能将工程设置为不可查看。
       在Excel中选择菜单“工具”→“保护”→“保护并共享工作簿”,在显示的“保护并共享工作簿”对话框中选中“以追踪修订方式共享”复选框,激活对话框中灰色的输入密码区域,在“密码”文本框中输入密码后单击“确定”按钮。
       Snap3.jpg
       在显示的“确认密码”对话框中再次输入密码后单击“确定”按钮。
       Snap4.jpg
       此时系统会显示“此操作将导致保存文档。是否继续?”的对话框。
       Snap5.jpg
       单击“确定”按钮后在显示的对话框中单击“确定”按钮即可。
       Snap6.jpg
       完成设置后当在VBE中查看工程时则会出现一个“工程锁定”的对话框,提示“工程不可查看”。
       Snap7.jpg
       如果需要取消“工程不可查看”只需在Excel中选择菜单“工具”→“保护”→“撤消对共享工作簿的保护”在显示的“取消共享保护”对话框中需要输入正确的密码中单击“确定”按钮即可。
       Snap8.jpg

TA的精华主题

TA的得分主题

发表于 2009-6-23 17:48 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2009-6-23 22:00 | 显示全部楼层
能一如既往的坚持这么长时间,且一直都写的这么详细,确实让人钦佩!
Thanks!

TA的精华主题

TA的得分主题

发表于 2009-6-23 22:40 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2009-6-23 22:58 | 显示全部楼层
太感激了,先收藏了,再慢慢仔细看。

TA的精华主题

TA的得分主题

 楼主| 发表于 2009-6-24 08:36 | 显示全部楼层

第11部分 其他应用

技巧190         优化代码
190-1        关闭屏幕刷新
       在使用代码改变工作表的显示内容或格式时关闭屏幕刷新可以加快运行速度,如下面的代码所示。
  1. #001  Sub Screen()
  2. #002      Dim i As Integer
  3. #003      Dim t As Date
  4. #004      Dim t1 As String
  5. #005      Dim t2 As String
  6. #006      Application.ScreenUpdating = False
  7. #007      t = Timer
  8. #008      For i = 1 To 30000
  9. #009          Cells(1, 1) = i
  10. #010      Next
  11. #011      t1 = Timer - t
  12. #012      Application.ScreenUpdating = True
  13. #013      t = Timer
  14. #014      For i = 1 To 30000
  15. #015          Cells(1, 1) = i
  16. #016      Next
  17. #017      t2 = Timer - t
  18. #018      MsgBox "关闭屏幕刷新运行时间:" & Format(t1, "0.00000") & "秒" _
  19. #019           & Chr(13) & "开启屏幕刷新运行时间:" & Format(t2, "0.00000") & "秒"
  20. #020  End Sub
复制代码
代码解析:
       Screen过程使用两次For...Next语句给A1单元格填充数据,最后使用消息框显示两次运行的时间。在第一次循环时关闭屏幕刷新,应用于Application对象的ScreenUpdating属性设置屏幕刷新功能是否打开,设置为False关闭屏幕刷新,将看不到代码的执行过程,但可以加快代码的运行速度。
       运行Screen过程,消息框显示两次代码的运行时间,可以看出关闭屏幕刷新后运行时间远远小于开启屏幕刷新时运行的时间,如图所示。
       Snap1.jpg

190-1 关闭屏幕刷新.rar

6.86 KB, 下载次数: 1105

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-6 09:45 , Processed in 0.052037 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表