VBAであいまい検索をしてデータを取得したいときはないでしょうか。VBAであいまい検索をしてデータを取得したいが方法がよくわからない・VBA上で検索系の関数をつかってあいまい検索をしたいがどの関数をつかってよいかわからないですよね。VBAであいまい検索する方法あいまい検索の対象となる表を用意まずは、あいまい検索の対象となる表をExcelに用意しましょう。サンプルはA列に名前、B列に番号を入れています。方法その1;MATCH関数を使うMATCH関数とはMATCH関数とは対象列を上から順に検索し、一致したらその位置番号を返すワークシート関数です。3番目のパラメーター”0”の場合は完全一致で検索されます。今回はアスタリスクを追加し部分一致検索をしています。サンプルコードサンプルコードは以下の通りです。サンプル表のA列を対象に「いも」が含まれる初めの行番号を求めます。番目のパラメーター”1”の場合でも同じ結果を得ることができます。方法その2;VLookup関数を使うVLookup関数とはVLookup関数とは対象範囲を左上から順に検索し、一致したら合致した行番号の指定列位置にある値を返すワークシート関数です。サンプルコードサンプルコードは以下の通りです。サンプル表のA列を対象に「いも」が含まれる隣のセルの値を求めます。2タカヒロVlookupであいまい検索をする場合は第四引数をTrueにするのですが、うまくいかない場合があるので、完全一致のFalseにしてアスタリスクを付加して部分一致検索をさせています。方法その3;Like演算子を使うLike演算子とはLike演算子は文字列をパターンで突き合わせ、その結果をTrue/Falseで返します。チルダ「~」などのワイルドカード文字を含めることができます。サンプルコードサンプルコードは以下の通りです。サンプル表のA列を対象に「いも」が含まれるセルの行番号を求めます。2方法その4;Findメソッドを使うFindメソッドとはFindメソッドはセル範囲の中で検索した文字列を含むセルを返します。LookAt:=xlPartとすると部分一致検索となり、ワイルドカードを使用することができます。サンプルコードサンプルコードは以下の通りです。サンプル表のA列を対象に「いも」が含まれるセルの行番号を求めます。2方法その5;Filter関数を使うFilter関数とはFilter関数は一次元配列から検索文字列を含む要素に絞り込んだ配列を返します。サンプルコードサンプルコードは以下の通りです。サンプル表のA列を対象に「いも」が含まれる隣のセルの値を求めます。実装手順は以下の通りです。Excel側にVBAを実装していきます。1Excelを新規に開き、「開発」タブをクリックし、「VisualBasic」をクリックします。ショートカットキー「Alt」+「F11」でもOKです。2標準モジュールを追加します。モジュール」を選択します。3右ペインのウインドウに上記のVBAを入力します。VBAを実行するでは早速VBAの実行をしてみましょう。1「開発」タブの「VBA」をクリックし実行したいマクロを選択し、「実行」をクリックします。2処理がされたことが確認できれば完了です。さいごにいかがでしょうか。VBAであいまい検索する方法についてまとめました。他にも便利な方法がありますので、よろしければご参照頂ければと思います。この記事の関連キーワードこちらの記事の関連キーワード一覧です。クリックするとキーワードに関連する記事一覧が閲覧できます。「抽出」の関連記事こちらの記事の内容「抽出」に関連する記事一覧です。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。VBA抽出SUM関数の合計範囲を自動で調整する方法!列/行両対応!Excelシートを移動するショートカットキーまとめ!先頭/最後移動も!RECOMMENDこちらの記事も人気です。