关于保护表格和解锁表格的时候控件刷新问题

yuqwio852956 2017-09-03 04:27:44

Private Sub CommandButton1_Click()

Sheet2.Protect Password:=1915, DrawingObjects:=True, Contents:=True, Scenarios:=True
Sheet2.Application.EnableEvents = True

Sheet2.Application.EnableEvents = False
Sheet2.Unprotect Password:=1915
End Sub

Private Sub CommandButton2_Click()
Sheet1.Protect Password:=1915, DrawingObjects:=True, Contents:=True, Scenarios:=True
Sheet1.Application.EnableEvents = True

Sheet1.Application.EnableEvents = False
Sheet1.Unprotect Password:=1915
End Sub


按钮均在表格1,按钮一点击的时候,控件会刷新,按钮二点击的的时候不会刷新,我想要点击按钮的时候控件不会闪一下。
...全文
1320 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuqwio852956 2017-09-07
  • 打赏
  • 举报
回复
谢谢两个大神讲解,麻烦了~
赵4老师 2017-09-06
  • 打赏
  • 举报
回复
仅供参考:
    Application.ScreenUpdating = False
    Application.Interactive = False
yuqwio852956 2017-09-06
  • 打赏
  • 举报
回复
自己 顶,希望大神帮忙看看
独梦尘烟 2017-09-06
  • 打赏
  • 举报
回复
由于VBA默认屏幕更新是启动的(application.screenupdating=true),按钮1执行程序过程中需要切换到sheet2,再切换到当前工作簿,因此按钮会刷新,而按钮2本来就在当前sheet1工作薄中,因此不会刷新;只要在按钮1程序中关闭屏幕更新即可(仅供参考)

2,464

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧