EXCEL强制启用宏的实现
(2018-06-01 14:18:59)
标签:
it文化教育 |
分类: EXCEL |
如果,EXCEL禁用了宏,那么,我们制作的很多功能就不能实现了。为此,必须要求启用宏。
MsgBox
"不能找到<启用宏>工作表", vbCritical
Exit Sub
objSheet.Visible =
xlSheetVisible
Dim wksInfoSheet As
Worksheet
Dim objSheet As
Object
On Error Resume
Next
Set wksInfoSheet =
ThisWorkbook.Worksheets("启用宏")
'<启用宏>工作表并判断其是否存在
If wksInfoSheet Is
Nothing Then
MsgBox "不能够找到<启用宏>工作表", vbCritical
Exit Sub
End If
Application.ScreenUpdating = False '关闭屏幕更新
wksInfoSheet.Visible =
xlSheetVisible
For Each objSheet In
ThisWorkbook.Sheets '隐藏其他工作表
If Not objSheet Is wksInfoSheet Then
objSheet.Visible = xlSheetVeryHidden
End If
Next objSheet
Application.ScreenUpdating = True '屏幕更新
ThisWorkbook.Save
'保存工作簿
首先,当然是在工作薄里添加一个名为“启用宏”的工作表,写上些内容,提示如何启用宏。
其次,在模块里添加如下代码
Sub AskUserEnabledMacros()
Dim wkslnfoSheet As Worksheet
Dim objSheet As Object
On Error Resume Next
Set wkslnfoSheet = ThisWorkbook.Worksheets("启用宏")
If wkslnfoSheet Is Nothing Then
'<启用宏>工作表并判断其是否存在
End If
Application.ScreenUpdating = False
'关闭屏幕更新
For Each objSheet In ThisWorkbook.Sheets
'隐藏其他工作表
Next objSheet
wkslnfoSheet.Visible = xlSheetVeryHidden
'显示启用宏工作表
ThisWorkbook.Saved = True
Application.ScreenUpdating = True
End Sub
Sub RunOnClose()
End Sub
-------------------------------------------------------------------------
华丽的分割
然后再,thisWorkBok对象的Open事件里引用AskUserEnabledMacros方法
beforColse事件里引用RunOnClose方法
完美收官。
后一篇:代码生成器

加载中…