选择第3行和第2行到最后一行之间的范围运行时错误13:类型不匹配?

时间:2011-07-28 15:33:14

标签: excel excel-vba vba

我正在尝试编写一个首先找到最后一行的代码,并选择第二行到最后一行和第三行之间的所有行。然后继续删除它们。但我一直遇到错误13:键入不匹配

  Dim StartRow, LastRow, NuRow As Variant
  StartRow = 3
  Sheets("Sheet3").Activate
  If WorksheetFunction.CountA(Cells) > 0 Then

    'Search for any entry, by searching backwards by Rows.

   LastRow = Cells.Find(What:="*", After:=[A1], SearchOrder:=xlByRows,  SearchDirection:=xlPrevious).Row
End If
    NuRow = LastRow - 1
    Rows("StartRow:NuRow").Delete 'Run time error 13 Type Mismatch

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

请改为尝试:

Rows(StartRow & ":" & NuRow).Delete

答案 1 :(得分:1)

抛出错误的是Rows对象。它期待以“3:20”形式的行索引(例如)。你传给它一个字符串“StartRow:NuRow”。

尝试将该语句更改为:

Rows(StartRow & ":" & NuRow).Delete