我有一张受保护的工作表,某些单元格已解锁以供编辑。我有按钮单击宏,它运行各种进程,暂时取消保护工作表以允许代码运行,然后在完成后再次保护它。例如:
sub macro1()
activesheet.unprotect
' code here
activesheet.protect allowsorting = true
activesheet.protect allowfilter:= true
end sub
由于某些原因,当我现在运行这些宏时,它要求输入我从未放入的密码。表格不应受密码保护。我运行了一个密码破解程序宏,它告诉我密码是" AAAAAAAABABF"
是什么导致这种情况,以及如何将其从请求密码中删除? 似乎无法在论坛中找到有关此问题的任何结果。 谢谢你的帮助
答案 0 :(得分:0)
您的代码中存在错误,因此密码保护会在此行Option Explicit
上激活。为了避免像这样的错误,请确保始终使用顶部的Sub Macro1()
ActiveSheet.Unprotect
'code
ActiveSheet.Protect AllowSorting:=True
ActiveSheet.Protect AllowFiltering:=True
End Sub
。
一般情况下,这应该没问题:
AAAAAAAABABF
关于Sub TestMe
ActiveSheet.Unprotect AllowSorting = True
End Sub
,它不是您设置的密码,但其散列值与密码的散列值相同。
如果您想看到自己,请尝试以下代码:
"AllowSorting = True"
这有点无意义,但就您使用{{1}}作为密码而言,您可以将其用于取消保护。