尝试删除非活动受保护工作表中的行时出现运行时错误 1004



>我正在尝试通过VBA删除非活动受保护工作表中的一行。如果没有保护,删除工作正常。

我正在Workbook_Open子中设置工作表保护:

Private Sub Workbook_Open()
    Dim Password As String
    Password = "123"
    Dim myWorksheet As Worksheet
    For Each myWorksheet In ThisWorkbook.Worksheets
        myWorksheet.Protect Password:=Password, UserInterFaceOnly:=True
    Next
    ActiveWorkbook.Protect Password
End Sub

错误在以下代码的第一行引发:

Public Sub DeleteRow(Row As Integer)
    Rows(Row).Delete
    [...]
End Sub

我做错了什么?奇怪的是,我可以删除活动受保护工作表中的一行。请帮帮我!

马可

您是否考虑过在宏想要开始执行时添加一行代码来取消对工作表的保护,并在宏完成之前添加一行来保护工作表?

最新更新