0

在一个关于VBA 的问题中:向 Instr 传递多个值John Coleman 发布了一个“包含”函数,该函数接受多个搜索字符串,然后将这些搜索字符串输入 Instr 进行检查,这对我来说很棒并且效果很好。但是,它需要在设计时编写搜索字符串列表(据我所知),并且我希望能够创建从电子表格上不同位置收集的搜索字符串的动态列表。所以在他的功能中,我会这样称呼它;

If Contains(StringToSearch, "Alan", "Betty", "Arthur", True)

我希望能够更像这样称呼它;

If Contains(StringToSearch, Range("B1:B3"), True)

然后,我尝试查看是否可以动态组合我的条目,然后将结果传递给他的函数,但无法使用 2 种不同的方法这样做;

Dim varClasses() As Variant          (Method 1)
Dim strClasses() As String           (Method 2)
For i = 0 To n
  strClasses(i) = Range("C5").Offset(0, i).Value '(Method 1)
  varClasses(i) = Range("C5").Offset(0, i).Value '(Method 2)
Next i
If Contains(sEntry, strClasses, True) Then       '(Method 1)
If Contains(sEntry, varClasses, True) Then       '(Method 2)
  MsgBox "Found"
End If

    

所以我希望能够创建一个搜索词列表,该函数将接受这些搜索词来进行多词搜索。谢谢阅读。

4

0 回答 0