Excelを使っていると、「別の表から特定のデータを探して、自動で入力したい」という場面によく遭遇しませんか?例えば、商品IDを入力するだけで、商品名や価格が自動で表示されるような仕組みです。
これを実現するのが、Excelの中でも特に利用頻度が高いVLOOKUP(ブイ・ルックアップ)関数です。
「難しそう」「エラーが出て嫌になる」という声もよく聞きますが、仕組みさえ理解してしまえば、転記ミスをなくし、業務時間を大幅に短縮できる強力な武器になります。
この記事では、VLOOKUP関数の基本的な使い方から、実務で役立つ応用テクニック、そして誰もがつまずくエラーの対処法までを分かりやすく解説します。
VLOOKUP関数とは?何ができるのか簡単に解説
VLOOKUP関数は、「指定した範囲の左端の列で特定の値を検索し、その値と同じ行にある指定した列のデータを返す」関数です。
言葉だけだと少しややこしいですが、身近な例で言えば「電話帳」や「辞書」と同じ仕組みです。
- 電話帳で探すとき: 「氏名」を探して、それに対応する「電話番号」を知る
- VLOOKUPで探すとき: 「商品ID」を探して、それに対応する「商品名」や「単価」を表示する
手作業でリストを目視確認してコピペする作業は、VLOOKUP関数を使えば一瞬で完了します。
VLOOKUP関数の基本構文と引数の設定方法
VLOOKUP関数を使いこなすには、4つの「引数(ひきすう)」の設定方法を覚える必要があります。これらは「何を」「どこから」「どれを」「どうやって」探すかという指示書のようなものです。
基本構文:
`=VLOOKUP(検索値, 範囲, 列番号, [検索の型])`
それぞれの引数について詳しく見ていきましょう。
第1引数:検索値(何を探すか)
「どのデータを元に検索するか」を指定します。
通常は、商品IDや社員番号などが入力されたセルを選択します。この値が、後述する「範囲」の一番左の列に含まれている必要があります。
第2引数:範囲(どこから探すか)
データが入力されている表全体の範囲を指定します。
ここでの最重要ポイントは、「検索したい値(IDなど)が入っている列を、範囲の一番左端にする」ことです。VLOOKUPは左端の列しか検索できません。
第3引数:列番号(どの列のデータを返すか)
「範囲」の左端を1列目として数え、何列目にあるデータを引っ張ってきたいかを数字で指定します。
例えば、範囲の左から2番目に「商品名」があるなら、ここには「2」と入力します。
第4引数:検索の型(完全一致か近似一致か)
検索の方法を指定します。以下の2つのどちらかを入力します。
- FALSE(または 0): 完全一致。探している値と完全に同じものだけを探します。実務では9割以上こちらを使います。
- TRUE(または 1・省略): 近似一致。数値の範囲検索(成績評価など)で使いますが、通常のデータ検索では使いません。
基本的には、常に「FALSE」または「0」を指定すると覚えておいて問題ありません。
初心者向け!VLOOKUP関数の具体的な使い方手順
それでは、実際に入力する手順を見ていきましょう。「商品ID」から「商品名」を表示させる例で解説します。
1. 結果を表示させたいセルをクリックします。
2. 数式バーまたはセルに `=VLOOKUP(` と入力します。
3. 検索値となるセル(商品IDが入力されているセル)をクリックし、`,`(カンマ)を入力します。
4. 範囲となるデータ表全体をマウスでドラッグして選択します。
- ※この時、数式をコピーしても範囲がずれないように、F4キーを押して「絶対参照($マークがついた状態)」にしておくと便利です。
- `,`(カンマ)を入力します。
5. 列番号を指定します。商品名が範囲の左から2番目なら `2` と入力し、`,`(カンマ)を入力します。
6. 検索の型として `FALSE`(または `0`)と入力します。
7. 最後に `)` で閉じてEnterキーを押します。
これで、指定したIDに対応する商品名が表示されるはずです。
実務で役立つVLOOKUP関数の応用テクニック
基本ができたら、次は実務で頻繁に使う応用テクニックを押さえましょう。
別シートや別ブックのデータを参照する方法
データリスト(マスタ)が、入力用のシートとは別のシート、あるいは別のExcelファイルにあることはよくあります。
- 別シートの場合: 第2引数の「範囲」を指定する際に、対象のシート見出しをクリックして範囲を選択するだけでOKです。自動的に `Sheet2!A1:C10` のような形式になります。
- 別ブックの場合: 両方のファイルを開いた状態で、同様に範囲選択を行います。参照元のファイルが閉じているとエラーになる場合があるため注意が必要です。
IFERROR関数と組み合わせてエラー表示を消す方法
VLOOKUP関数は、検索値が見つからないと `#N/A` というエラーを表示します。これが見積書などに表示されていると見栄えが悪いですよね。
`IFERROR`(イフ・エラー)関数で囲むことで、エラーの場合に「空白」や「該当なし」と表示させることができます。
数式例:
`=IFERROR(VLOOKUP(検索値, 範囲, 列番号, FALSE), “”)`
上記の例では、エラー(見つからない時)は空白(`””`)になります。
XLOOKUP関数との違い(Office 365ユーザー向け)
もし、お使いの環境がMicrosoft 365(Office 365)やExcel 2021以降であれば、XLOOKUP関数の使用も検討してください。
- XLOOKUPのメリット:
- 検索値が左端になくても検索できる。
- 列番号を数える必要がない。
- エラー処理を関数内に組み込める。
VLOOKUPの上位互換とも言える機能ですが、古いバージョンのExcelを使っている相手にファイルを送る場合は、互換性のあるVLOOKUPを使う方が安全です。
VLOOKUP関数でよくあるエラーと原因・対処法
「数式は合っているはずなのにエラーが出る!」
これはVLOOKUPあるあるです。主なエラーとその原因を知っておきましょう。
#N/A エラー(データが見つからない場合)
最も一般的なエラーです。「Not Available(利用不可)」の意味で、検索値が範囲の中に見つからない場合に表示されます。
- 原因: 単純にデータがない、または検索値の入力ミス(タイプミス)。
- 対処: 検索値が正しいか確認するか、前述のIFERROR関数で見た目を整えます。
#REF! エラー(範囲指定や列番号のミス)
「Reference(参照)」のエラーです。無効なセルを参照している場合に起こります。
- 原因: 第3引数の「列番号」が、選択した「範囲」の列数より大きい数字になっていることが多いです(例:3列しか選んでいないのに、4列目を指定している)。
- 対処: 範囲の選択範囲を広げるか、列番号を修正します。
書式設定の不一致によるエラー
一見同じに見えるのに `#N/A` が出る場合、これが原因の可能性が高いです。
- 原因: 検索値は「数値」として入力されているのに、参照先のリストでは「文字列」として保存されている(セルの左上に緑の三角マークが出ている状態)。
- 対処: 双方のセルの書式設定を統一します。「数値に変換する」機能を使うとスムーズです。
ここから先は、実際にトラブルが起きた際に役立つ具体的なチェックリストと、プロが実践している「エラーを未然に防ぐための小技」を紹介します。
ここより下は有料エリアとなります。


コメント