Excel 当工作簿结构的完整性被锁定时,VBA能否更改工作表的可见性?
我想锁定工作簿的完整性,以便用户不能删除或移动工作表。但是我仍然希望能够使用VBA隐藏和取消隐藏图纸。有什么方法可以做到这一点吗?您可以解除工作簿的保护,完成工作,然后重新保护工作簿:Excel 当工作簿结构的完整性被锁定时,VBA能否更改工作表的可见性?,excel,vba,Excel,Vba,我想锁定工作簿的完整性,以便用户不能删除或移动工作表。但是我仍然希望能够使用VBA隐藏和取消隐藏图纸。有什么方法可以做到这一点吗?您可以解除工作簿的保护,完成工作,然后重新保护工作簿: ThisWorkbook.Unprotect Password:="your_password" '[... do your stuff...] ThisWorkbook.Protect Password:="your_password", Structure:=True 您可以取消对工作簿的保护,完成工作并重
ThisWorkbook.Unprotect Password:="your_password"
'[... do your stuff...]
ThisWorkbook.Protect Password:="your_password", Structure:=True
您可以取消对工作簿的保护,完成工作并重新保护工作簿:
ThisWorkbook.Unprotect Password:="your_password"
'[... do your stuff...]
ThisWorkbook.Protect Password:="your_password", Structure:=True
设置保护时使用此代码
Sheets("Sheet1").Protect Password:="myPassword", UserInterfaceOnly:=True
其效果是,用户无法更改您不允许的任何内容(上面的代码可能比我在这里显示的内容更多),而UserInterfaceOnly属性允许您的代码在不存在保护的情况下运行。设置保护时使用此代码
Sheets("Sheet1").Protect Password:="myPassword", UserInterfaceOnly:=True
其效果是,用户不能更改您不允许的任何内容(上面的代码可能比我在这里展示的内容更多),而UserInterfaceOnly属性允许您的代码充当不存在保护的角色