我需要删除表格中的一些内容。我首先过滤我想要保留的内容,然后删除剩下的内容。
我有一个“运行时错误'1004':” 不允许此操作。该操作正在尝试在工作表的表格中移动单元格。
我真的不明白,我在另一个表中使用相同的方法,它工作正常。
我的桌子从A3开始。
我桌旁边还有表格控制按钮。这可能是我的问题吗?
ActiveSheet.ListObjects("Table_Query_from_Visual_FoxPro_Tables").Range. _
AutoFilter Field:=4, Criteria1:="X", Operator:=xlOr, Criteria2:="Y"
ActiveSheet.UsedRange.Offset(1, 0).Resize(ActiveSheet.UsedRange.Rows.Count - 1).Rows.Delete
答案 0 :(得分:0)
您滥用Worksheet.UsedRange property。由于您的表以A3开头,但.UsedRange
从A1开始,您将删除标题行。
您需要查看.DataBodyRange property的ListObject object。
With ActiveSheet
With .ListObjects("Table_Query_from_Visual_FoxPro_Tables")
.Range.AutoFilter Field:=4, Criteria1:="X", Operator:=xlOr, Criteria2:="Y"
With .DataBodyRange
.Cells.EntireRow.Delete
End With
.Range.AutoFilter Field:=4
End With
End With