1

是否可以将通配符视为 range.find 函数中的普通字符。

我正在搜索字符串匹配的列表,但遇到了问题,因为某些字符串包含通配符。例子:

清单:
ab
cde
fghi
jk
?l

r = list.range.find(s, LookAt:=xlWhole)

如果s = "??" 这将导致r等于 "ab"
我想要的地方是 "??" 被视为仅匹配字符串“??”的普通字符串
如果s = "?l" 我希望r等于 "?l" 而不是 "ab"

4

1 回答 1

4

使用~,即~?

对于你的?l,它是~?l

一般解决方案:

s = Application.WorksheetFunction.Substitute(s, "?", "~?")
于 2011-03-18T13:42:28.790 回答