Excel VBA基于包含文本部分的单元格值删除行

Raf*_*pov 3 excel vba excel-vba

我想删除基于单元格值的行,单元格值包含单元格内的"upg"或"upgrade".当这个词存在时,它不是单元格内的唯一单词.

这是我的代码的一部分,不删除任何东西:

Sub DeleteValues()


Dim i As Integer
Dim MFG_wb As Workbook
Dim Dep As Integer



Set MFG_wb = Workbooks.Open _
("C:\Users\rosipov\Desktop\eliran\MFG - GSS\MFG Daily\Fast Daily " & Format(Now(), "ddmmyy") & ".xlsx", _
UpdateLinks:=False, IgnoreReadOnlyRecommended:=True)
MFG_wb.Sheets("Aleris").Activate

Dep = MFG_wb.Sheets("Aleris").Range("B2").End(xlDown).Row


For i = Dep To 2 Step -1
    Cells(i, 2).Select
    If Not (Selection.Value = "& upg &" Or Selection.Value = "*& upgrade &*") Then
        Rows(i).Delete
    End If
Next i



End Sub
Run Code Online (Sandbox Code Playgroud)

这是问题所在:

For i = Dep To 2 Step -1
    Cells(i, 2).Select
    If Not (Selection.Value = "& upg &" Or Selection.Value = "*& upgrade &*") Then
        Rows(i).Delete
    End If
Next i
Run Code Online (Sandbox Code Playgroud)

Sco*_*ner 5

使用INSTR():

For i = Dep To 2 Step -1
     If Instr(MFG_wb.Sheets("Aleris").Cells(i, 2).Value,"upg")>0 Or Instr(MFG_wb.Sheets("Aleris").Cells(i, 2).Value,"upgrade") >0 Then
        MFG_wb.Sheets("Aleris").Rows(i).Delete
     End If
Next i
Run Code Online (Sandbox Code Playgroud)