Excel 基于一组条件删除多行

Excel 基于一组条件删除多行,excel,vba,Excel,Vba,我有上面提到的代码来删除所有包含apple和name的行,如果可能的话,我希望excel在一两行中执行代码。非常感谢您的帮助 删除行的快速方法是使用自动筛选: Sub Macro() Dim i As Long For i = Cells(Rows.Count, 14).End(xlUp).Row To 2 Step -1 If Cells(i, 14).Value2 = "APPLE" Then Rows(i).Delete End If Next i Dim

我有上面提到的代码来删除所有包含apple和name的行,如果可能的话,我希望excel在一两行中执行代码。非常感谢您的帮助

删除行的快速方法是使用自动筛选:

Sub Macro()
Dim i As Long
For i = Cells(Rows.Count, 14).End(xlUp).Row To 2 Step -1
    If Cells(i, 14).Value2 = "APPLE" Then
        Rows(i).Delete
    End If
Next i

Dim f As Long
For f = Cells(Rows.Count, 14).End(xlUp).Row To 2 Step -1
    If Cells(f, 14).Value2 = "NAME" Then
        Rows(f).Delete
    End If
Next f
End Sub
Dim i As Long
For i = Cells(Rows.Count, 14).End(xlUp).Row To 2 Step -1
    IF Cells(i, 14).Value2 = "APPLE" OR Cells(i, 14).Value2 = "NAME" THEN Rows(i).Delete
Next i

删除行的快速方法是使用自动筛选:

Dim i As Long
For i = Cells(Rows.Count, 14).End(xlUp).Row To 2 Step -1
    IF Cells(i, 14).Value2 = "APPLE" OR Cells(i, 14).Value2 = "NAME" THEN Rows(i).Delete
Next i

删除行的最快方法是使用自动筛选删除行的最快方法是使用自动筛选为什么使用筛选?更简单的方法是搜索关键字,然后删除该行。下面的答案更容易理解,也更简单。@alowflyingpig代码越长并不意味着速度越慢。逐行比使用过滤器慢得多。在指控之前做一下测试。从来没有说过这不是更快/更慢。我说得更简单。为最终用户编写的几行代码更简单,更易于阅读/理解。嗯,在你指控阅读用户所写内容之前…@alowflyingpig我理解你。你为什么要使用过滤器?更简单的方法是搜索关键字,然后删除该行。下面的答案更容易理解,也更简单。@alowflyingpig代码越长并不意味着速度越慢。逐行比使用过滤器慢得多。在指控之前做一下测试。从来没有说过这不是更快/更慢。我说得更简单。为最终用户编写的几行代码更简单,更易于阅读/理解。嗯,在你指控阅读用户所写内容之前…@alowflyingpig我理解你。