我正在尝试找到一个宏,它会删除用户指定数字以下的所有行。例如,用户将输入“19”,宏将删除20行及以下的行。我非常感谢你的帮助。
谢谢!
答案 0 :(得分:3)
试试这个。我使用过ActiveSheet
。您可以将其设置为您要使用的任何工作表。
Sub Sample()
Dim Ret As Long
Ret = Application.InputBox(Prompt:="Please enter a row number", Type:=1)
If Ret = False Then Exit Sub
With ActiveSheet
.Rows(Ret + 1 & ":" & .Rows.Count).Delete
End With
End Sub
答案 1 :(得分:0)
您可以输入column = 1和Row = 1您想要保留的行数。 <= p>表示数据在行=删除之前,每行返回行= 2。
Sub Macro1()
'
' Macro1 Macro
'
deleterowsbefore = ActiveSheet.Cells(1, 1)
Rows("2:" & deleterowsbefore - 1).Select
Selection.Delete Shift:=xlUp
End Sub
答案 2 :(得分:-1)
这应该可以解决问题:
Sub UserInput()
Dim num As Integer
num = InputBox(Prompt:="Enter the row number.", Title:="Enter Row Number", Default:="Row number")
If (num < 1) Then
GoTo Whoops:
End If
Dim i As Integer
i = 1
Do While i <= num
Rows(1).EntireRow.Delete
i = i + 1
Loop
GoTo Fin:
Whoops:
MsgBox ("You have entered an invalid row number")
Fin:
End Sub