删除 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
您需要计算 ListObjects("xJrnl").DataBodyRange
的行数,以便知道有多少 data 行(header 和摘要除外行)。
您可以通过 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
您好,您使用下面的代码从 table 中删除了最后一行数据。该代码单独运行正常,但是当 运行 作为较大代码集的一部分时,它不会删除最后一行。任何关于导致此问题的原因和解决方案的想法都将不胜感激。
Sub TrimJrnl()
Dim wsR2 As Worksheet
Set wsR2 = ThisWorkbook.Sheets("Journal")
lastrow = wsR2.ListObjects("xJrnl").Range.rows.Count
rows(lastrow).Delete
End Sub
您需要计算
ListObjects("xJrnl").DataBodyRange
的行数,以便知道有多少 data 行(header 和摘要除外行)。您可以通过
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