我的部分代码如下:
For i = 2 To Last Step 1
If InStr(1, strg, Delim & ws2.Range("G" & i).Value & Delim, vbTextCompare) Then _
ws2.Range("G" & i).EntireRow.Delete And i = i - 1
Debug.Print i
Next i
没有And-Part,代码运行良好。
我因i=i-1
而收到错误。如果条件为true,我该怎么说呢AND
那个?
答案 0 :(得分:5)
如果要在满足If
条件的情况下执行多项操作,则需要将每项操作放在单独的行中,然后使用If...
关闭End If
。
尝试以下代码:
If InStr(1, strg, Delim & ws2.Range("G" & i).Value & Delim, vbTextCompare) Then
ws2.Range("G" & i).EntireRow.Delete
i = i - 1
End If
您也可以使用以下方法删除整行:
ws2.Rows(i).Delete