excel中禁止使用“清除—全部和格式”命令的VBA如何写?

2025-03-29 01:36:10
推荐回答(4个)
回答1:

为了验证你的问题特意去看了看,是这样,清除全部是selection.clear,会把单元格恢复到原始的状态,即锁定状态,所以在你保护的表上当然无法编辑了,
我能想到的方法1,禁止菜单的“清除”菜单项(disable),或者干脆删掉这个项。具体可以参考下commandbar的对象属性及方法
方法2,用onchange事件,在工作表中添加这个事件,当有内容被改变可以检查下是否有单元格被锁定,锁定的解锁之。。。onclear这种事件是没有的。。。。
有问题的话可继续提问,望采纳

回答2:

添加工作表事件如下:两个引号内的密码你自己加上,保护的选项自己更改。
Private Sub Worksheet_Change(ByVal Target As Range)
ActiveSheet.Unprotect Password:=""
Target.Locked = False
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:=""
End Sub

回答3:

知道有类似代码,你搜搜

回答4:

水平有限,只知道在EXCEL2003中使用VBA代码对这两个菜单进行屏蔽,EXCEL2007以上版本用VBA操作选项卡和功能区,貌似是一门学问,目前懂的人不是特别多吧.