如何在VBA中使用文本运算符?

时间:2014-09-19 14:20:40

标签: excel-vba vba excel

如何在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

2 个答案:

答案 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函数,而不是单元格本身。