禁用指定宏后作品就安全许多
Option Explicit
Dim CmdCtrls As CommandBarControls
Dim Cmd As CommandBarControl
Sub 禁用指定宏()
Set CmdCtrls = Application.CommandBars.FindControls(ID:=859)
For Each Cmd In CmdCtrls
Cmd.Enabled = False
Next
Application.CellDragAndDrop = False
End Sub
Sub 恢复指定宏()
Set CmdCtrls = Application.CommandBars.FindControls(ID:=859)
For Each Cmd In CmdCtrls
Cmd.Enabled = True
Next
Application.CellDragAndDrop = True
End Sub
加强版
Sub 禁用指定宏()
With Application
.CommandBars("Button").Controls("指定宏(&N)...").Enabled = False
.CommandBars("Forms").Controls("按钮(&B)").Enabled = False '禁用窗体的按钮
.CommandBars("Object/Plot").Controls("指定宏(&N)...").Enabled = False
.CommandBars("Shapes").Controls("指定宏(&N)...").Enabled = False
.CommandBars("Inactive Chart").Controls("指定宏(&N)...").Enabled = False
.CommandBars("Excel Control").Controls("指定宏(&N)...").Enabled = False
.CommandBars("Curve").Controls("指定宏(&N)...").Enabled = False
.CommandBars("Pictures Context Menu").Controls("指定宏(&N)...").Enabled = False
.CommandBars("OLE Object").Controls("指定宏(&N)...").Enabled = False
End With
End Sub
Sub 恢复指定宏()
With Application
.CommandBars("Button").Controls("指定宏(&N)...").Enabled = True
.CommandBars("Forms").Controls("按钮(&B)").Enabled = True
.CommandBars("Object/Plot").Controls("指定宏(&N)...").Enabled = True
.CommandBars("Shapes").Controls("指定宏(&N)...").Enabled = True
.CommandBars("Inactive Chart").Controls("指定宏(&N)...").Enabled = True
.CommandBars("Excel Control").Controls("指定宏(&N)...").Enabled = True
.CommandBars("Curve").Controls("指定宏(&N)...").Enabled = True
.CommandBars("Pictures Context Menu").Controls("指定宏(&N)...").Enabled = True
.CommandBars("OLE Object").Controls("指定宏(&N)...").Enabled = True
End With
End Sub
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。