可以使用InStr查找多个String1值吗?

时间:2019-08-16 10:37:22

标签: excel vba instr

我正在处理一些数据,方法是搜索列表并打印出与我要查找的条件匹配的单元格的行号。我正在使用InStr做这个-可以用来搜索多个项目吗?

我已经尝试过“ Or”,“ And”等,但它们似乎不起作用,并且我正在寻找许多条件,因此不希望没有很多If语句。

For Each cell In SrchRng
    If InStr(1, cell.Value, "A" or "B") > 0 Then


   'Print row number...

     End If
Next cell

End Sub
  

运行时错误“ 13”类型不匹配

发生以上情况。实际输出将是出现“ A”或“ B”的行号。

1 个答案:

答案 0 :(得分:0)

您可以尝试添加代码,以缩短代码长度,也可以使其更具可读性:

If InStr(1, cell.Value, "A") + _
   InStr(1, cell.Value, "B") > 0 Then
     'do stuff
End If