在执行清除受保护表格中的filter的macros后,Excel表格不受密码保护
我写了一个代码来清除受保护的工作表中的filter。 基本上,它不保护表单显示所有数据并保护表单。 但是在执行之后,工作表没有密码就被保护起来了,它可以访问删除和插入我保护工作表时受到限制的行。 请检查下面的代码。
'Keyboard Shortcut: Ctrl+p On Error Resume Next ActiveSheet.Unprotect Password:="generation@34" ActiveSheet.ShowAllData ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _ , AllowFormattingCells:=True, AllowFormattingColumns:=True, _ AllowFormattingRows:=True, AllowInsertingRows:=True, _ AllowInsertingHyperlinks:=True, AllowDeletingRows:=True, AllowSorting:= _ True, AllowFiltering:=True, AllowUsingPivotTables:=True End Sub
你的问题是你正在调用两次“保护”function。
第二个电话在选项中没有密码,因此没有密码保护。
除非您正在更改保护设置,否则不需要再次调用所有设置
ActiveSheet.Protect Password:="generation@34"
应该足以使用以前的设置密码保护您的工作表。
另外,选项;
AllowDeletingRows:=True AllowInsertingRows:=True
两者都设置为true,这允许用户进行您想要限制的更改。