删除行不起作用

时间:2017-08-07 07:52:43

标签: excel excel-vba row vba

我正在尝试使用excel 2016在这方面找到的代码,但它不起作用。想要从中开始删除行数。

Sub Sample()
   Dim Ret As Long
   Ret = Application.InputBox(Prompt:="Please enter a row number", Type:=1)
   If Ret = False Then Exit Sub
   With Mysheet1
       .Rows(Ret + 1 & ":" & .Rows.Count).Delete
   End With
End Sub

我的代码存在问题

1 个答案:

答案 0 :(得分:0)

既然你已经解决了一些问题,我认为问题在于你从未宣称过Mysheet1是什么。相反,你可以做的是

With Worksheets("<YourSheetName>")

然而,Rows并不像你认为的那样有效。根据{{​​3}},它必须用于特定的Range对象。the official documention告诉我们如何找到工作表的最后一行。所以,你可以这样做:

With Worksheets("<YourSheetName>")
    .Range(Cells(Ret + 1, 1), Cells(.UsedRange.Rows.Count, 1)).Delete
End With