• ベストアンサー

エクセルのマクロでFindメソッドを使い、複数の文字列を検索するには?

表題のとおり、エクセルのマクロを使い、複数の文字列(どちらか)を検索するにはどのように記述したら良いのでしょうか? Find("文字列1" Or "文字列2")で出来ると思ったのですが、エラーが出てしまいます。 皆様の知恵をお貸し下さい。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Ce_faci
  • ベストアンサー率36% (46/127)
回答No.1

こんばんわ こんなのはいかがでしょう? インプットボックス2つにそれぞれ検索したいものを入れてください。 検索範囲はセルA2:Z100です。 Dim w1 As Variant, w2 As Variant Sub 探し物は() w1 = InputBox("CAN I HELP YOU?") w2 = InputBox("MORE?") Sheets(1).Range("A2:Z100").Select On Error GoTo ESC Cells.Find(What:=w1).Activate Exit Sub ESC: 何ですか (w2) End Sub Private Sub 何ですか(ByRef w2 As Variant) On Error GoTo ES2 Cells.Find(What:=w2).Activate Exit Sub ES2: MsgBox "NOTHInG" End Sub

noname#82622
質問者

お礼

マクロまで組んで頂き、ありがとうございました。 勉強の為に、ヘルプを駆使して読んでみます。

その他の回答 (1)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんばんは。 >Find("文字列1" Or "文字列2")で出来ると思ったのですが いいえ出来ません。 最終目的は何か分かりませんが、Find メソッドには、そのような機能はない以上は、一つずつする方法しかありません。ただ、単に、検索するだけなら、マクロは関係ないと思います。二重に検索をしても、効率が悪いだけだと思います。

noname#82622
質問者

補足

そうですか・・・ 教えて頂き、ありがとうございました。 最終目的は、ピボットテーブルの合計又は集計行に色を付ける事です。 "合計"Or"集計"で検索は出来ないので、"計"で検索して色を付ければいいと分かりました。 このような場合、皆様はどうされてるのでしょうか?

関連するQ&A