1

range.find関数でワイルドカードを通常の文字として扱うことは可能ですか。

文字列の一致をリストで検索していますが、一部の文字列にワイルドカードが含まれているため、問題が発生しています。例:

リスト:
ab
cde
fghi
jk
?l

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

s ="??"の場合 これにより、rは「ab」に等しく
なります。「??」の文字列にのみ一致する通常の文字列のように扱われます s
= "?l"の 場合、 rを"ab"ではなく"?l"に等しくしたいと思います。

4

1 に答える 1

4

~、すなわちを使用し~?ます。

あなたにとって?l、それは~?lです。

一般的な解決策:

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