VBA Excel:表格保护:UserInterFaceOnly消失了

Pwi*_*Pwi 7 excel vba excel-vba password-protection excel-2010

在VBA Excel中,如果我使用UserInterFaceOnly保护工作表:=我关闭后再次打开文件并且再次打开文件,UserInterFaceOnly模式不活动,只有密码保护.

代码: UserInterFaceOnly:=True

为什么?

car*_*rra 8

重新UserInterfaceOnly:=True打开工作簿后,必须重新申请才能完成。取自Excel的Vb 保护方法参考:

如果在UserInterfaceOnly参数设置为true的情况下应用此方法,然后保存工作簿,则当您重新打开工作簿时,整个工作表(而不仅仅是界面)将受到完全保护。若要在打开工作簿后重新启用用户界面保护,则必须再次将UserInterfaceOnly设置为true来应用此方法。

现在,如果您担心这会花费太长的时间(如您所说,为15秒),请查看代码审查答案。我已经在几本复杂程度各异的工作簿中做到了这一点,并且在我尝试过的所有版本(包括2010年)中,重新应用保护的时间都可以忽略不计。


RGA*_*RGA 1

我不确定该问题的原因是什么,但您可以通过向事件添加保护代码、重置每个Workbook_Open()工作表保护来规避它UserInterfaceOnly:=True