删除 Table vba 中的最后一行

Delete Last Row in Table vba

您好,您使用下面的代码从 table 中删除了最后一行数据。该代码单独运行正常,但是当 运行 作为较大代码集的一部分时,它不会删除最后一行。任何关于导致此问题的原因和解决方案的想法都将不胜感激。

Sub TrimJrnl()
    
    Dim wsR2 As Worksheet
    
    Set wsR2 = ThisWorkbook.Sheets("Journal")
    
    lastrow = wsR2.ListObjects("xJrnl").Range.rows.Count
    
    rows(lastrow).Delete
    
End Sub
  1. 您需要计算 ListObjects("xJrnl").DataBodyRange 的行数,以便知道有多少 data 行(header 和摘要除外行)。

  2. 您可以通过 ListObjects("xJrnl").ListRows(LastRow).Delete 访问这些数据行。

喜欢下面:

Option Explicit

Public Sub TrimJrnl()
    Dim wsR2 As Worksheet
    Set wsR2 = ThisWorkbook.Sheets("Journal")
    
    Dim LastRow As Long
    LastRow = wsR2.ListObjects("xJrnl").DataBodyRange.Rows.Count
    
    wsR2.ListObjects("xJrnl").ListRows(LastRow).Delete
End Sub

关于如何使用表格的很好的指南:The VBA Guide To ListObject Excel Tables