EXCEL2003でのVBAについて教えてください。

LIKE文で文字列の検証を行っているのですが「パターン文字列が不正です」と表示されます。

A1のセルには、あい[う:え]お、というを文字が入力されているとします。
この状態で以下のVBAを走らすと3行目で「パターン文字列は不正」と表示されます。
 moji = Range("A1").Value
 Range("A2").Value = moji Like "*:*"
 Range("A3").Value = moji Like "*[*"
 Range("A4").Value = moji Like "*]*"

[の文字を含むのでTRUEと表示したいのですが・・・
全体の文字列の長さは変化します、固定されていません。
ただ文中に[もしくは]が含まれるかを判断したいと思っています。
適切なLIKE文の記述方法を教えてください。
宜しくお願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2010/01/26 14:20:52
  • 終了:2010/01/26 16:23:07

ベストアンサー

id:heke2mee No.1

heke2mee回答回数162ベストアンサー獲得回数432010/01/26 14:40:12

ポイント60pt

Like演算子で比較を行う際に「*」や「?」、「#」をエスケープしたいときは、[]で囲います。

moji = Range("A1").Value

Range("A2").Value = moji Like "*:*"

Range("A3").Value = moji Like "*[[]*"

Range("A4").Value = moji Like "*[]]*"

http://q.hatena.ne.jp ダミー

id:spyglass

出来ました!!

なるほど、再度囲めば良かったのですね。

有難う御座いました。

2010/01/26 16:22:34

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません