相关文章推荐
失恋的包子  ·  lambda ...·  1 年前    · 
傲视众生的白开水  ·  Java ...·  1 年前    · 
俊逸的黄花菜  ·  Docker Php Example - ...·  1 年前    · 

excel vba 筛选后删除

在 Excel VBA 中,可以使用 Range.AutoFilter 方法对数据进行筛选,然后使用 Range.SpecialCells(xlCellTypeVisible) 方法来获取筛选后的单元格范围。最后,可以使用 Range.Delete 方法删除筛选后的单元格。

举个例子,假设我们有一个名为 "Sheet1" 的工作表,其中第一行为列标题,第二行开始为数据。我们想要删除 "Sheet1" 工作表中 "ColumnA" 列值为 "apple" 的所有行。可以使用以下代码实现:

With Sheet1
    .Range("A1:Z1").AutoFilter Field:=1, Criteria1:="apple"
    .Range("A2:Z" & .Cells(.Rows.Count, "A").End(xlUp).Row).SpecialCells(xlCellTypeVisible).Delete
    .AutoFilterMode = False
End With

这段代码会筛选出A列为apple的行,接着删除这些行,最后关闭筛选模式。

  •