使用 vba 删除行而不丢失 excel 中的公式

delete rows without loosing the formula in excel using vba

我有一个 excel sheet,其中有一个带有下拉菜单的 table 和一个正常的 excel 单元格。我尝试清除 table 的内容,我已经通过

完成了
range("X").ClearContents

但问题是它会清除内容,但我能够看到 table 边框。

当我用过

Range("X").Select
Application.DisplayAlerts = False
Selection.Delete
Application.DisplayAlerts = True
Range("X").Select
Selection.ClearContents

它删除了 table(包括内容和边框),但我可以看到下拉列表中的公式丢失了,即下拉单元格已变为普通单元格。

提前致谢!

您可以使用 ClearFormats() method,这将删除 table 边框。

此外,要清除内容,您不必先 select 范围。充分利用 With statement

With Range("X")
    .ClearContents
    .ClearFormats
End With

以上应该能达到你的目的。