使用保护表的 VBA 错误


Sub ProtectAll()
Dim wSheet As Worksheet
Dim ShPwd As String
ShPwd = "123456789"
CurPath = ActiveWorkbook.Path
CurFilename = ActiveWorkbook.Name
CurFile = CurPath & "" & CurFilename
For Each wSheet In Worksheets
wSheet.Protect Password:=ShPwd, DrawingObjects:=False, Contents:=True,          Scenarios:=True, AllowFormattingColumns:=False, AllowFormattingRows:=True, _
AllowUsingPivotTables:=True
Next wSheet
ActiveWorkbook.Protect (Pwd)
ActiveWorkbook.ProtectSharing Filename:=CurFile, SharingPassword:=ShPwd
End Sub

所以我在最后一行收到一个错误,似乎有共享密码,我在那一行做错了什么。 当我运行宏时,我收到运行时错误 5 无效调用或参数的错误。

我怀疑您可能只能保护保护共享单个工作簿,而不能同时使用两者。 尝试删除/注释掉该行:

ActiveWorkbook.Protect (Pwd)

(当然还有ActiveWorkbook.ProtectSharing ...行(。

这在一个简单的测试中对我有用。

最新更新