Excel VBA OutOfMemory

Excel VBA OutOfMemory,vba,excel,Vba,Excel,我有一个Excel文件,大约有3MB。我现在要删除所有行: Dim maxRows As Double maxRows = ThisWorkbook.Worksheets("Anlagenliste").Rows.Count Dim a As Long For a = 26 To maxRows ThisWorkbook.Worksheets("Anlagenliste").Rows(a).EntireRow.Delete Next a 当循环第一次执行时,即a=0我得到一个outof

我有一个Excel文件,大约有3MB。我现在要删除所有行:

Dim maxRows As Double
maxRows = ThisWorkbook.Worksheets("Anlagenliste").Rows.Count
Dim a As Long
For a = 26 To maxRows
    ThisWorkbook.Worksheets("Anlagenliste").Rows(a).EntireRow.Delete
Next a
当循环第一次执行时,即
a=0
我得到一个outofmemory异常? 有什么想法吗

Dim maxRows As Long
maxRows = ThisWorkbook.Worksheets("Anlagenliste").UsedRange.Rows.Count
Dim a As Long
For a = maxRows to 26 STEP -1
    ThisWorkbook.Worksheets("Anlagenliste").Rows(a).EntireRow.Delete
Next a
  • 最大行应为
  • 这样删除时,您应该始终向后(从下到上)
  • 您应该从上次使用的行开始删除
  • 最大行应为
  • 这样删除时,您应该始终向后(从下到上)
  • 您应该从上次使用的行开始删除
  • 为什么要循环:

    With ThisWorkbook.Worksheets("Anlagenliste")
      .Range("26:" & .Rows.Count).EntireRow.Delete
    End With
    
    为什么要循环:

    With ThisWorkbook.Worksheets("Anlagenliste")
      .Range("26:" & .Rows.Count).EntireRow.Delete
    End With
    

    maxRows应该是
    Long
    ,决不能是
    Double
    maxRows应该是
    Long
    ,决不能是
    Double