☆Excel☆VLOOKUP関数であいまい検索するには
覚え書きでーす。しばらくぶりにいじるとなかなか思い出せないんですよね。。。表に含まれる文字列を検索して、ヒットしたら検索範囲内の別の列のデータを書き出す。使用関数はVLOOKUPです。あいまい検索をするには、ワイルドカード「*」を使用します。【例】F3セル>VLOOKUPの式 =VLOOKUP(検索値,検索範囲,列番号,検索の型)E3セル>検索値 探したい文字列(もちろん数値でもOKです)A3:C10>検索範囲 表など検索~表示するセル領域ここでは、『送付先』の都道府県(E3)を検索値として送料料金表の地域一覧(A3:C10)から該当する地域を探し出し、該当する行の、列番号(3)の送料(C3)の値を送料(F3)へ表示させます。E3へ「埼玉県」と入力すると、"埼玉県"を含む行を見つけ、送料が書かれている列の値"0円"がF3セルへ表示されます。具体的な書き方は以下の通り。=VLOOKUP("*"&E3&"*",$A$3:$C$10,3,FALSE)基本の式はこれ。↓ ↓ ↓=VLOOKUP(検索値,検索範囲,列番号,検索の型)検索したい文字列と完全一致するならシンプルに"E3"と指定すれば良いのですが、前後に余計な文字も入っていたりする場合にはワイルドカード"*"を併用します。<検索値>"*"&E3&"*" ↑この書き方で、E3セルの文字列(数値等)の前後に他の文字が含まれていても検索可能となります。*(アスタリスク)は0文字以上の任意の文字列のことです。"(ダブルクォーテーション)で囲まないとExcelさんが指示の意味を理解してくれずエラーになるので注意。&(アンドまたはアンパサンド)は文字列やセルを繋げてくれます。<検索範囲>$A$3:$C$10↑E3だけに書くのであれば、別に"A3:C10"で全然オッケーです。$(ドルマーク)は絶対参照指定のこと。今回は書いた後にE列の下の行へもコピーしてみたので、セル位置を固定するため絶対参照指定をしています。これをやらずにセルコピーしたりオートフィル使うと、全然違う場所を見に行ってしまい参照値エラーになったりします。気を付けましょう~。アルファベットの前に$を置くと列位置固定、数字の前に置くと行位置固定です。なので、$A$3:$C$10と書くと、セルをどこにずらしても最初に指定した場所を見てくれます。いつでも決まった場所を見て欲しいときは絶対参照、セルを動かしたら、その分だけ見に行く場所もずらしたいときは相対参照を使いましょう。<列番号>3(検索範囲の列の左から数えて3番目の列)表示させたい列の番号を指定します。もし"2"を指定した場合は「地方」が表示されます。<検索の型>FALSE(フォルス)は完全一致。型には"TRUE"と"FALSE"の2つがあります。今回はワイルドカードを使用したかったのでFALSE指定としています。データの並べ替えも必要ないので手間はかかりません。TRUEは近似値なのですが、私には使用する機会がなく、未だに使い方がわかっていないのでした。。。