2017-07-03 15 views
0

これはCTRL-Fで行うことができますが、VBAで実行できるようにしたいと思います。たとえば、ワークブック内の「Worthington Pump」を検索したいが、ワークブック内のどこにあるかは、同じ順番になっているが、同じセルにあるので、「Worthington Pump」を検索することができます。 CTRL-FではなくVBAを使ってこれを行う方法はありますか?キーワードで検索VBAでワイルドカードを使用する

+2

可能性のある重複した[VBAエクセル - 文字列のワイルドカードを見つける](https://stackoverflow.com/questions/35538​​493/vba-excel-find-string-wildcard) –

+0

なぜVBAで 'Range.Find()'メソッドを使用するだけではありませんか? 'Find'と' FindNext'は一緒にCTRL + Fでできること全てを行うことができます。 –

答えて

2

rngが検索したい範囲であるとします。

For Each c In rng 
    If InStr(c.Value, "Worthington") > 0 And InStr(c.Value, "Pump") > 0 Then 
     'some code to highlight cell 
    End If 
Next c 

は、そのコードがあなたのためにトリックを行うだろうと思う:)

2

InString検索は学ぶことが素晴らしい、そして重要ですが、別のオプションは、私は非常にあなたが得る励ますRange.Findメソッドを使用することですに精通。 Range.Find Method (Excel)

ワイルドカード文字はアスタリスク(*)であり、あなたが選んだ文字列の前、中、または後に置くことができます。下の私の例では、テキストが "Worthington"または "Pump" ANYWHEREにある最初のセルを見つけて選択します。

非常に便利な学習方法です。

Range("A1:A10").Find(What:="*Worthington*").Select 
'Do Stuff' 

ORの

Range("A1:A10").Find(What:="*Pump*").Select 
'Do Stuff' 
関連する問題