如何在VBA上使用文本运算符?我想删除所有“REP ??????”来自excel。我试过“ REP ”,但它没有用。谢谢!
Sub test()
For i = Cells(Rows.Count, 2).End(xlUp).Row To 1 Step -1
If Cells(i, 2) = "REP" Then Cells(i, 1).EntireRow.Delete
Next i
End Sub
答案 0 :(得分:1)
您可以查看左侧3个字符:
Sub test()
For i = Cells(Rows.Count, 2).End(xlUp).Row To 1 Step -1
If Left$(Cells(i, 2).Value, 3) = "REP" Then Cells(i, 1).EntireRow.Delete
Next i
End Sub
请注意,这是区分大小写的。
答案 1 :(得分:0)
问题是您正在尝试将字符串与单元格进行比较。 Cell
是VBA中具有.Value
属性的对象。您需要将单元格的值与" REP"进行比较。
If Cells(i, 2).Value = "REP" Then Cells(i, 1).EntireRow.Delete
@Rory的答案是正确的,如果单元格值可能只是开始" REP"而不是整个文本。请注意,他还在单元格的值上使用Left
函数,而不是单元格本身。