excel - 删除表中的空白行

标签 excel vba

我正在尝试运行一个宏,该宏选择表列中的空白单元格并删除整行。

下面的脚本执行了除删除部分之外的所有操作,这会提示以下错误:

run-time error 1004 - "Delete method of Range class failed"

我使用了以下代码:

Sub test()
Range("Table1[[New]]").Activate
Selection.SpecialCells(xlCellTypeBlanks).Select
Selection.EntireRow.Delete
End Sub

最佳答案

问得好!如果没有表格,.EntireRow.Delete 始终有效,但在表格内它看起来却不起作用。

这有效:

Sub Test()
  Dim Rng As Range
  On Error Resume Next
  Set Rng = Range("Table1[[New]]").SpecialCells(xlCellTypeBlanks)
  On Error Goto 0
  If Not Rng Is Nothing Then
    Rng.Delete Shift:=xlUp
  End If
End Sub

关于excel - 删除表中的空白行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12986520/

相关文章:

excel - 工作表显示公式而不是结果,同时将一张工作表的内容显示到另一张工作表

excel - 确定 Excel 切片器指向的字段

vba - 等待 Shell 完成,然后格式化单元格 - 同步执行命令

excel - Countifs 没有返回正确的值

excel - 从 VBA 中的数组中随机选择循环

vba - VBA代码中的IF AND公式

excel - VBA将html表格数据复制到excel工作表

VBA 取消组合形状(SmartArt)

excel - VBA添加一个新工作表,如果名称存在添加一个数字

excel - 隐藏 MS Office 功能区中的加载项选项卡(尤其是 PowerPivot 选项卡)