我有从A到F列的数据,我想在E列中过滤并删除包含#和仅数字的整行。 (检查图像)。我使用了代码,它适用于#,但不适用于数字。在过滤器中,“数字过滤器”不可用,因此我无法在宏中记录。
如何更改代码?请帮帮我。
Sub Macro3()
Dim ws As Worksheet
Dim rng1 As Range
Set ws = Sheets("Sheet1")
Set rng1 = ws.Range(ws.[A2], ws.Cells(Rows.Count, "F").End(xlUp))
With ActiveSheet
.AutoFilterMode = False
rng1.AutoFilter Field:=5, Criteria1:="#"
rng1.Offset(1, 0).EntireRow.Delete
.AutoFilterMode = False
End With
End Sub
答案 0 :(得分:3)
您可以使用Criteria1:=">=0"
查找所有数字。
rng1.AutoFilter Field:=5, Criteria1:=">=0", Operator:=xlAnd
Dim RowsToDelete As Range
On Error Resume Next
Set RowsToDelete = rng1.Resize(RowSize:=rng1.Rows.Count - 1).Offset(RowOffset:=1).SpecialCells(xlCellTypeVisible).EntireRow
On Error GoTo 0
If Not RowsToDelete Is Nothing Then RowsToDelete.Delete
注意:
rng1.Resize(RowSize:=rng1.Rows.Count - 1).Offset(RowOffset:=1)
从rng1选择中删除标头
.SpecialCells(xlCellTypeVisible).EntireRow
仅选择过滤范围内的可见单元格。