使用 Listobjects 调整大小 table 无效
Resize table using Listobjects not working
我在 Sheet 2 中有一个名为“MyTable”的 table。 table 的行数每次都会根据数据发生变化。我想清除 table 的内容并使用宏调整它的大小,使其只有两行 - 标题行和空行。
Table标题行是从B5到K5。
我尝试了下面的代码,它清除了 table 内容并调整了大小,但是,没有根据需要调整大小。它会调整大小,但不会清除 C 列中的 table 边框。
非常感谢任何帮助。
Sub Table_Resize()
Dim rng as Range
Sheet2.Select
Range("MyTable").ClearContents
Set rng = Range("MyTable[#All]").Resize(2, 10)
Sheet2.ListObjects("MyTable").Resize rng
End Sub
我认为你想做的是删除所有行。
Sub Table_ClearContents_Resize()
Dim ws As Worksheet: Set ws = Sheets("Sheet2")
Dim ol As ListObject: Set ol = ws.ListObjects("MyTable")
' Delete table contents
ol.DataBodyRange.ClearContents
' Resize table
ol.Resize Range(ol.HeaderRowRange.Resize(2).Address)
End Sub
我在 Sheet 2 中有一个名为“MyTable”的 table。 table 的行数每次都会根据数据发生变化。我想清除 table 的内容并使用宏调整它的大小,使其只有两行 - 标题行和空行。
Table标题行是从B5到K5。
我尝试了下面的代码,它清除了 table 内容并调整了大小,但是,没有根据需要调整大小。它会调整大小,但不会清除 C 列中的 table 边框。
非常感谢任何帮助。
Sub Table_Resize()
Dim rng as Range
Sheet2.Select
Range("MyTable").ClearContents
Set rng = Range("MyTable[#All]").Resize(2, 10)
Sheet2.ListObjects("MyTable").Resize rng
End Sub
我认为你想做的是删除所有行。
Sub Table_ClearContents_Resize()
Dim ws As Worksheet: Set ws = Sheets("Sheet2")
Dim ol As ListObject: Set ol = ws.ListObjects("MyTable")
' Delete table contents
ol.DataBodyRange.ClearContents
' Resize table
ol.Resize Range(ol.HeaderRowRange.Resize(2).Address)
End Sub