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 

这是问题:

 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 

使用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