VLOOKUP関数はExcelの数ある関数の中でも、特に便利で汎用性の高い関数です。商品コードから商品情報を検索したり、顧客IDから住所を抽出したりと、大量データの中から特定の情報を取得できる「データ検索には必須」とも言える存在です。
本記事では、VLOOKUP関数の基本構文から実務で役立つ応用テクニックまで、詳細に解説していきます。
エラーが出た時の対処法や他の関数との組み合わせ方など、実践的なノウハウを余すところなくお伝えしていきます。
- 表から必要なデータを検索したい人
- 最近エクセルの勉強を始めた人&これから就職する人
VLOOKUP関数とは?
VLOOKUP関数の読み方
読み方は「ブイ ルックアップ関数」です。
VLOOKUP関数では何ができるの?
データ検索の自動化で業務効率アップ
VLOOKUP関数では、手動で行っていた面倒な検索作業を自動化することができます。
例えば、5000行ある商品リストから特定の商品コードの単価を探す場合、従来なら目視で探す必要がありましたが、VLOOKUP関数を使えば一瞬で正確に値を取得できます。
複数シート間の連携も簡単に
別のシートやブックに保存されているデータを参照もすることができます。
「売上管理シート」から「商品マスタシート」の単価を自動で取得するなど、複数ファイルをまたいだデータ連携が可能になります。
VLOOKUP関数の使い方
関数の基本構文をマスター
まずはVLOOKUP関数の基本構文を確認しましょう。
基本構文は以下の4つの引数で構成されています。
=VLOOKUP( 検索値, 範囲, 列番号, [検索方法] )
VLOOKUP関数の引数は4つあり、全て必ず指定する必要があります。
実際に利用する場面では、以下のような式を入力することになります。
=VLOOKUP( A2, $B$2:$E$500, 4, FALSE )
注意が必要な点は、検索値と範囲の指定方法です。
関数を入力後、数式を別のセルにコピーする場合、絶対参照($記号)にしていないと範囲がずれてしまいます。
範囲が変わっても問題ない場合を除き、検索範囲がずれないように絶対参照($記号)をアルファベットと数字の前に一つずつ入力しておきましょう。
F4キーを押すことで$記号を自動挿入することもできます。
関数の引数について知ろう
第1引数:検索値
「検索値」には範囲の中から検索したい値を指定します。
先ほど指定した範囲内から検索対象を縦方向に検索するとお伝えしましたが、検索値に入力するのは「何を検索するか」という部分です。
例えばデータの中から「アイス」を検索したい時は検索値に”アイス”と記述します。
第2引数:範囲
「範囲」には検索する値と、表示したい列を含む範囲を指定します。
先ほどの例では「アイス」を検索値に指定していましたが、このままではどの範囲から「アイス」を検索するのかわかりませんよね。VLOOKUP関数では「検索値」に指定した値を「範囲」で指定した範囲の一番左側の列から検索します。
例えばA2:C10を「範囲」に指定すると、A2からA10までの範囲に検索値が存在するかを検索するようになっています。B列やC列は「範囲」に含まれていますが検索は出来ません。
え?じゃあB列とC列を範囲に指定する意味がないんじゃないの?と思うかもしれませんが、データを取り出せるのもここで指定した範囲内に限ります。
つまり、それぞれの列に商品名(A列) ,価格(B列) ,発注数量(C列)が記載されているとして、範囲にA列しか指定していないと、B列の価格は取り出す事が出来ません。
範囲をA:Bのように指定しなければB列は取り出す事が出来ないのです。
第3引数:列番号
「列番号」には取り出したいデータの列番号を指定します。
ここで注意したいのは、指定した「範囲」の中で何列目かを記述する必要がある点です。
「範囲」の左側から1,2,3,…とカウントする必要があり、範囲がB2:D10であれば、B列が1 ,C列が2 ,D列が3のようにカウントします。
第4引数:検索の型
「検索の型」には「False」または「0」と入力しておきましょう。
検索範囲内にある検索値を探す場合は、「False」か「0」を指定しておけば問題ありません。
もし「True」か「1」を指定したい場合は、検索列が昇順に並んでいる必要があり、近似一致への理解も必要です。価格帯の検索などの特殊な用途に利用する場合は、Trueにしても良いでしょう。
実際にやってみよう!実践編
別シートの参照
「顧客管理表」シートから「売上データ」シートの情報を取得する場合は、「顧客管理表」シートのデータを入力したいセルに以下のように入力します。
=VLOOKUP(A2, 売上データ!A:D, 4, FALSE)
第2引数の範囲を「 シート名! + 範囲 」のように指定します。
シート名から指定する場合は、シート名の後ろに「!」を付ける必要がありますので注意してください。
別ブックの参照
「売上データ」ブックから「顧客マスタ」ブックの「顧客情報」シートを取得する場合は、「売上データ」シートのデータを入力したいセルに以下のように入力します。
=VLOOKUP(A2, [顧客マスタ.xlsx]顧客情報!A:D, 4, FALSE)
第2引数の範囲を「 [ブック名] + シート名! + 範囲 」のように指定します。
ブック名を[]で囲う必要がありますので注意してください。
複数の条件で検索
商品カテゴリとサイズの組み合わせで検索する場合は、補助列を作成
=A2&B2 // 商品コード列とサイズ列を結合
この補助列を検索値として使用します。より高度な方法として、INDEX(MATCH())の組み合わせも有効です。
よくあるエラーと解決法
#N/Aエラーの原因と対策
エラー原因 | 解決策 |
---|---|
検索値が存在しない | IFERROR関数で別の文字列を表示させる |
無駄なスペースがある | TRIM関数で文頭と文末のスペースを削除する |
検索値と検索範囲の型が文字列と数値で異なる | VALUE関数で文字列を数値に変換させる |
さらなるスキルアップを目指そう!
VLOOKUP関数を学習した後は、更に以下の関数も内容を把握しておきましょう。
用途が似ている関数や、一緒に使うとさらにできることの幅が広がる関数です。
関数名 | 用途 |
---|---|
XLOOKUP | VLOOKUP関数より柔軟でシンプルな検索 |
INDEX(MATCH()) | VLOOKUP関数の弱点を補った、関数の組み合わせによる検索 VLOOKUPでできない範囲の左側の検索もできる |
SUMIFS | 複数の条件に一致するセルの合計を求める |
IFERROR | 関数がエラーになった時に表示する内容を変える |
TRIM | 文頭と文末の無駄な空白を削除する |
VALUE | 文字列から数値への変換 |
まとめ
VLOOKUP関数は、データ検索の自動化による業務効率化に不可欠なツールです。
基本の4引数を理解し、絶対参照やエラー処理を適切に行うことで、初心者でも確実に使いこなせるようになります。時間を要してしまう事もありますが、よく利用される関数の一つですので少しずつ理解していきましょう。
実務では在庫管理や顧客情報検索などの多様なシチュエーションで活用することができ、IF関数やINDEX関数など、他の関数と組み合わせることで業務の幅が広がります。
エラーに戸惑うこともありますが、本記事で紹介した対処法を参考に、繰り返し練習してマスターしてください。
関数一覧
ましゅかぶろぐではExcel関数の一覧を3パターンご用意しています。
用途に合わせてお使いください。
各一覧の文字色が青くなっている関数はクリックすると解説ページを開くことができます。
エラー値についてのまとめ記事
関数でエラーが発生した際に表示される、エラーの種類を以下の記事でまとめています。

コメント