我有一个带有一个命令按钮的Excel工作表,用于添加新行,另一个命令按钮用于删除所选行。我在命令按钮中用于删除行的代码如下所示。此代码删除一个选定的行: -
ActiveSheet.Unprotect "xxxx"
Rows(ActiveCell.Row).Delete
ActiveSheet.Protect "xxxx", True, True
但是如何确保永远不会删除第一行(在我的情况下为行K12),因为此行包含所有公式和格式。 另外如何删除多行。 非常感谢您的帮助。
答案 0 :(得分:0)
也许换成:
If ActiveCell.Row > 12 Then
...
End If
我猜你也不想删除K12以上的任何行。
答案 1 :(得分:0)
为你试过这个。在这里你可以选择多个单元格
Sub test()
ActiveSheet.Unprotect "xxxx"
Dim rng As Range
On Error Resume Next
Set rng = Application.InputBox("select you range (use ctrl to Select non adjacen cells):", "multiple rows to delete", ActiveSheet.UsedRange.AddressLocal, , , , , 8)
If rng Is Nothing Then Exit Sub
If ActiveCell.Row > 12 Then
rng.EntireRow.Delete
Else
MsgBox "do not select from row 12 or above"
End If
ActiveSheet.Protect"xxxx", True,True
End Sub