В настоящее время я нахожусь в процессе создания сценария VBA, в котором я извлекаю список необработанных данных и отфильтровываю значения Apple, Banana и Oranges.Затем я удаляю все остальные строки, если это не те значения, которые указаны выше.
Так, например, у меня есть яблоко, банан, апельсин, виноград, мандарин, авокадо, кокос, лимон, арбуз.
Я только хочу сохранить яблоко, банан и апельсин в конце.Если у него есть какие-либо другие фрукты, я хочу удалить весь этот ряд информации.
Sub RMWO_Clean()
Dim ws As Worksheet
Dim rng As Range
Dim lastRow As Long
Set ws = ActiveWorkbook.Sheets("Sheet1")
lastRow = ws.Range("Q" & ws.Rows.Count).End(xlUp).Row
Set rng = ws.Range("Q1:Q" & lastRow)
Columns("AF:AF").Select
Selection.TextToColumns Destination:=Range("AA1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
Semicolon:=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(1, 1), TrailingMinusNumbers:=True
With rng
.AutoFilter Field:=1,Criteria1:="<>*Apple*", Operator:=xlAnd, Criteria2:="<>*Banana*"
.Offset(1, 0).SpecialCells(xlCellTypeVisible).EntireRow.Delete
End With
ws.AutoFilterMode = False
End Sub
Я знаю, что вы не можете использовать
Criteria3:=xx
Я также попробовал
Criteria1:=Array("<>Apple", "<>Banana", "<>Orange")
Но это, кажется, оставляет только оранжевый.
Можете ли вы дать мне знать, что я делаю неправильно?