VBA,禁止修改workbook的所有内容

1 代码1:禁止修改工作簿所有内容

  • 在workbook的  sheetchange() 里增加判断
  • 只要内容发生变化,触发 sheetchange()  就把 target参数内容置回之前的内容
  • 需要事先捕捉,修改前的 范围内容
Dim arr1

Private Sub Workbook_Open()
MsgBox "此工作簿不允许修改"
End Sub

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
MsgBox "此工作簿不允许修改"
Application.EnableEvents = False
Target.Value = arr1
Application.EnableEvents = True

End Sub

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
arr1 = Target.Value
End Sub

发布了390 篇原创文章 · 获赞 45 · 访问量 10万+

猜你喜欢

转载自blog.csdn.net/xuemanqianshan/article/details/104118634