- ベストアンサー
VBAのfindメソッドでセルの"先頭の"特定の文字のあるセルを検索したい。
下記に示すようなテキストがワークシート(Sheet1)に 貼り付けてあります。 (Sheet1) A1:第一条 この法律は平和の為にある。 A2:第二条 この法律は戦争反対。 A3:2 すごいぞ日本。 A4:第二条の二 がんばれ日本。 A5:一 第二条は多分最強。 これから、【先頭が】"第*条*" というセルのみを検索したくて 以下のようなFindメソッドを組みました。 Sheets(Sheet1").Columns(1).Find("第*条*") ところが、結果として抽出されるのは 第一条 この法律は平和の為にある。 第二条 この法律は戦争反対。 第二条の二 がんばれ日本。 一 第二条は多分最強。 と、セルの先頭以外に"第*条*"が存在するセルも検索してしまいます。 検索結果が 第一条 この法律は平和の為にある。 第二条 この法律は戦争反対。 第二条の二 がんばれ日本。 となるようにするには、Findメソッドをどのように 組めばよいのでしょうか? どなたがご指導をお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Findメソッドの引数をちゃんと設定しましょう。 Sheets(Sheet1").Columns(1).Find("第*条*", , xlValues, xlWhole) 以上。
その他の回答 (1)
- okormazd
- ベストアンサー率50% (1224/2412)
Findを使わなくてよいなら、 Sub test2() For Each c In [A1:A5] If c.Value Like "第*条*" Then Debug.Print c.Value End If Next End Sub
補足
回答有難う御座います。 当案件、Findメソッドで解決しました。 Likeもいずれ使いこなしたいと思います。 以上、有難う御座いました。
お礼
迅速な対応有難うございます。 完全一致を使えばよかったのですね。 有難う御座いました。