删除 Table 行
Delete Table Rows
我的 Excel 中有一个 Table
。 table 被称为 Table1
。
我想删除除 table 的第一行之外的整行,它可以手动完成,例如 select 该行然后删除 table 行,但我不能想象一下,如果该行达到超过一百万条记录。我尝试了以下代码:
Sheet3.Range("A20","E500000").Delete 2
但是上面的代码是错误的。错误说:
This won't work because it would move cells in a table on your worksheet.
有没有人和我有同样的问题?请多多指教
如果您的 sheet 中只有一个 Table
对象,请尝试以下操作。
Dim lo As ListObject
With Sheet3 '/* sheet code name */
Set lo = .ListObjects(1)
On Error Resume Next
lo.DataBodyRange.Delete xlUp
On Error GoTo 0
End With
如果不是,您可以明确识别您的 table,例如:
Set lo = .ListObjects("Table1")
由于@Haminteu想保留表头和第一行数据,我提供如下解决方案。
With Range("Table1")
.Offset(1).Resize(.Rows.Count - 1).Delete 2
End With
我想你想删除除 header 之外的所有行,如果是这样,你可以像这样使用 DataBodyRange:
ActiveSheet.ListObjects("Table1").DataBodyRange.Delete
所以 table 的第二行从单元格 A20 开始?
如果是这样,您只想删除行直到最后一个单元格,然后代码:
Sub dr()
Dim a As Integer
a = ActiveSheet.UsedRange.Rows.Count
Range(Range("A20"), Range("A" & a)).EntireRow.Delete
End Sub
Select 第二行。按Shift+ctrl+向下。这将 select 除 header 之外的所有记录。
右键单击并 select 删除。
我的 Excel 中有一个 Table
。 table 被称为 Table1
。
我想删除除 table 的第一行之外的整行,它可以手动完成,例如 select 该行然后删除 table 行,但我不能想象一下,如果该行达到超过一百万条记录。我尝试了以下代码:
Sheet3.Range("A20","E500000").Delete 2
但是上面的代码是错误的。错误说:
This won't work because it would move cells in a table on your worksheet.
有没有人和我有同样的问题?请多多指教
如果您的 sheet 中只有一个 Table
对象,请尝试以下操作。
Dim lo As ListObject
With Sheet3 '/* sheet code name */
Set lo = .ListObjects(1)
On Error Resume Next
lo.DataBodyRange.Delete xlUp
On Error GoTo 0
End With
如果不是,您可以明确识别您的 table,例如:
Set lo = .ListObjects("Table1")
由于@Haminteu想保留表头和第一行数据,我提供如下解决方案。
With Range("Table1")
.Offset(1).Resize(.Rows.Count - 1).Delete 2
End With
我想你想删除除 header 之外的所有行,如果是这样,你可以像这样使用 DataBodyRange:
ActiveSheet.ListObjects("Table1").DataBodyRange.Delete
所以 table 的第二行从单元格 A20 开始? 如果是这样,您只想删除行直到最后一个单元格,然后代码:
Sub dr()
Dim a As Integer
a = ActiveSheet.UsedRange.Rows.Count
Range(Range("A20"), Range("A" & a)).EntireRow.Delete
End Sub
Select 第二行。按Shift+ctrl+向下。这将 select 除 header 之外的所有记录。 右键单击并 select 删除。