Excel 删除受保护工作表上的行
我有一个受保护的工作表;除用户要编辑的单元格外,所有单元格都被锁定。我希望用户能够删除行,因此我在保护我的工作表时启用了“删除行”。正如预期的那样,我收到错误消息“您正在尝试删除包含锁定单元格的行…”我理解为什么会发生这种情况,因为我预期用户输入区域之外的所有单元格都被锁定 我不想解锁所有其他单元格,因为我不希望用户在其中输入数据 我曾研究过在“删除行”事件中取消工作表保护的功能,但未能找到此类事件。我想我可以在每一行旁边添加一个按钮,取消对工作表的保护,删除该行并重新保护工作表,但希望得到更优雅/更简单的解决方案Excel 删除受保护工作表上的行,excel,vba,Excel,Vba,我有一个受保护的工作表;除用户要编辑的单元格外,所有单元格都被锁定。我希望用户能够删除行,因此我在保护我的工作表时启用了“删除行”。正如预期的那样,我收到错误消息“您正在尝试删除包含锁定单元格的行…”我理解为什么会发生这种情况,因为我预期用户输入区域之外的所有单元格都被锁定 我不想解锁所有其他单元格,因为我不希望用户在其中输入数据 我曾研究过在“删除行”事件中取消工作表保护的功能,但未能找到此类事件。我想我可以在每一行旁边添加一个按钮,取消对工作表的保护,删除该行并重新保护工作表,但希望得到更优
当我的表格右侧的列中有锁定的单元格时,如何删除受保护工作表中的行?您可以使用一个按钮调用执行删除操作的VBA函数。和使用
Protect UserInterfaceOnly:=True
保护工作表时。通过这种方式,您可以通过受保护工作表上的VBA删除行并执行其他操作。您可以使用一个按钮调用VBA函数来执行删除操作。和使用
Protect UserInterfaceOnly:=True
保护工作表时。通过这种方式,您可以通过受保护工作表上的VBA删除行并执行其他操作。您通常可以通过以下代码实现这一点:
Public Sub ProtectMySheet()
Sheet1.Protect UserInterfaceOnly:=True
End Sub
然而,我发现这有时是偶然的。所以我有时会这样做
Public Sub EditStuffInProtectedSheet()
With Sheet1
.Unprotect MYPASSWORD ' You can store your password in a safe location, or make it a constant (if you're okay with your End Users knowing it)
' ***Do Stuff***
.Protect MYPASSWORD
End With
End Sub
您通常可以通过以下代码实现这一点:
Public Sub ProtectMySheet()
Sheet1.Protect UserInterfaceOnly:=True
End Sub
然而,我发现这有时是偶然的。所以我有时会这样做
Public Sub EditStuffInProtectedSheet()
With Sheet1
.Unprotect MYPASSWORD ' You can store your password in a safe location, or make it a constant (if you're okay with your End Users knowing it)
' ***Do Stuff***
.Protect MYPASSWORD
End With
End Sub
您可以为此编写脚本。。。插入一个删除选定行的按钮,代码将取消对工作表的保护,删除行并再次保护工作表。您可以为此编写脚本。。。插入删除选定行的按钮,代码将取消对工作表的保护,删除行并再次保护工作表。