VLOOKUP関数の使い方を図解で徹底解説。基本構文・別シート参照・複数条件・エラー対処まで、実務ですぐ使えるサンプル付きで網羅します。
目次
この記事でわかること
- VLOOKUPの基本構文(コピペOK)
- 別シート参照・複数条件の使い方
- #N/A・#REF!などエラーの原因と直し方
- VLOOKUPでは限界があるケースと代替手段
VLOOKUPとは?何ができる関数か1分で理解する
VLOOKUP(ブイルックアップ)とは、Excelで「表の中から特定のデータを検索して取り出す」関数です。たとえば「商品IDを入力したら商品名と単価が自動で表示される」「社員番号から氏名と部署を一気に引っ張る」そういった作業を自動化できます。
Excelの中でも特に使用頻度が高い関数のひとつで、営業管理・在庫管理・人事管理など、あらゆるビジネスシーンで活躍します。使いこなせるかどうかで、毎日の業務速度が体感で変わるレベルの関数です。
この記事は「VLOOKUPの全体像をつかむ」ための内容です。まずはここで大枠を理解してから、気になるテーマへ深掘りしてみてください。
VLOOKUPの基本構文と4つの入力項目
VLOOKUPの構文はシンプルで、覚えるのは4つだけです。
=VLOOKUP(検索値, 範囲, 列番号, 検索方法)

| 入力項目 | 意味 | 例 |
| 検索値 | 探したい値が入ったセル | B2(商品ID) |
| 範囲 | 検索対象のマスタ表全体 | F:I(マスタ表) |
| 列番号 | 取得したい列が範囲の左から何列目か | 2(商品名は2列目) |
| 検索方法 | 完全一致なら FALSE(または 0) | FALSE |
最初につまずくのは「列番号」です。 範囲の左端を「1」として数え、取得したいデータが何列目にあるかを指定します。慣れるまでは指で数えながらやって問題ありません。ただし、「マスタに列を追加するたびにこの番号がズレる」これがVLOOKUPを使い続ける上で地味に面倒なところです。後述するXLOOKUPに乗り換えると、この悩みがそっくりなくなります。
(※出典:Microsoft サポート「VLOOKUP 関数」)
【実務図解】受注管理表でVLOOKUPを使う手順
ここからは実際に使っていきましょう。まず営業部の「受注管理表」に商品IDを入れたら、商品名と単価が自動表示される仕組みを作ります。
受注管理表
| 受注No | 担当者 | 商品ID | 商品名 | 単価 |
| 1001 | 田中 | A003 | ? | ? |
商品マスター
| 商品ID | 商品名 | 単価 | メーカー |
| A001 | ノートPC | 98,000 | 〇〇社 |
| A003 | ワイヤレスマウス | 3,500 | △△社 |
手順①「商品名」を取得する


- 商品名を表示したいセル(D3)をクリック
- =VLOOKUP( と入力
- 検索値:商品ID(C3)をクリック → カンマ「,」
- 範囲:商品マスタ全体(F:I)をドラッグ選択 → カンマ「,」
- 列番号:2(商品名はマスタの左から2列目)→ カンマ「,」
- 検索方法:FALSE と入力 → 「)」でEnter
=VLOOKUP(C3,F:I,2,FALSE)
手順②「単価」を取得する
単価はマスタの3列目なので、列番号を 3 に変えるだけです。
=VLOOKUP(C3,マスタ!F:I,2,FALSE)
ここで意識してほしいのが、この「列番号を変えるだけ」という操作が積み重なると管理が煩雑になる点です。取得したい項目が5つあれば5本の数式を書き、マスタの列構成が変わるたびに全部直す必要があります。項目が多い表なら最初からXLOOKUPで組んだほうが後々ラクになる、というのが正直な感想です。
⇩ XLOOKUP関数の詳しい解説はこちら ⇩
【脱VLOOKUP】XLOOKUP関数の使い方を解説!列数え不要・エラー処理もこれ1本で完結
この記事でわかること XLOOKUPの基本の使い方(コピペOKの数式付き) 受注管理表を使った実務シミュレーション #N/Aエラーをなくす方法 スピル・複数条件…
VLOOKUPで別シートのデータを参照する方法
マスタが別シート(例:「マスタ」シート)にある場合、範囲の前にシート名を付けます。
=VLOOKUP(C3,マスタ!F:I,2,FALSE)
操作のコツ


範囲を選択するとき、シートタブ「マスタ」をクリックしてシートを切り替え、そのままF列〜I列をドラッグ選択するだけで マスタ!F:I と自動入力されます。手打ちする必要はありません。
別ファイルを参照する場合は [ファイル名.xlsx]シート名!範囲 の形式になります。ただし個人的には、別ファイル参照は運用コストが高い割にトラブルが多いため、できるだけ同じブック内にマスタを置くことをおすすめします。ファイルを移動・削除した瞬間に数式が壊れるリスクは、チームで使うファイルほど深刻です。
⇩ VLOOKUPで別シートを参照する詳しい解説はこちら ⇩
VLOOKUPで別シートを参照する方法【図解】|別ファイル・複数シートの書き方も解説
この記事でわかること 別シートを参照するときの基本の書き方(シート名!範囲) マウス操作だけでシート名を自動入力する手順 別ファイル(別ブック)参照の書き方と運…
VLOOKUPで複数条件で検索したい場合
VLOOKUPは1つの検索値しか使えないため、複数条件(例:「部門」と「氏名」の両方で絞る)には直接対応していません。
解決策は2つあります。
方法①:作業列を使って条件を結合する
マスタに「部門&氏名」を結合した列を作り、それを検索値にします。
作業列(マスタ):=F2&G2 →「営業部鈴木」
検索値(入力表):=B3&C3
=VLOOKUP(B3&C3, 作業列〜, 列番号, FALSE)
作業列を追加してもいい環境なら、これが一番わかりやすい方法です。
方法②:XLOOKUPを使う(推奨)
XLOOKUPなら作業列なしで & だけで複数条件を実現できます。
=XLOOKUP(B3&C3,F:F&G:G,H:H)
Microsoft 365か Excel 2021以降を使っているなら、こちらを選ぶ理由がほとんどです。表がすっきりし、メンテナンスコストも下がります。
⇩ VLOOKUPで複数条件を指定する詳しい解説はこちら ⇩
VLOOKUPで複数条件を指定する方法【図解】|できない?代替策も完全解説
この記事でわかること VLOOKUPで複数条件が「そのままでは」使えない理由 作業列(結合列)を使って複数条件に対応する手順 XLOOKUPで作業列なしに複数条…
VLOOKUPのエラーと対処法まとめ
| エラー | 主な原因 | 対処法 |
| #N/A | 検索値がマスタにない・表記ゆれ | IFERRORで表示を変える/表記を統一する |
| #REF! | 列番号が範囲の列数を超えている | 列番号を確認・修正 |
| #VALUE! | 列番号に数値以外が入っている | 列番号を整数で入力 |
| 0が表示される | マスタの該当セルが空白 | IF関数で空白処理 |
| 違う値が返る | 検索方法がTRUEになっている | 第4引数をFALSEに変更 |
現場で一番多いのは、やはり #N/A です。そしてその9割は「見た目は同じなのにExcelが別物と認識している」全角・半角、数値・文字列の混在、余分なスペースが原因です。エラーが出たらまずここを疑ってください。
=IFERROR(VLOOKUP(C3,F:I,2,FALSE),"登録なし")
⇩各エラーの詳しい解説はこちら → VLOOKUPのエラー原因と対処法まとめ⇩
VLOOKUPがエラーになる原因と対処法まとめ【図解】|#N/A・#REF・#VALUEを一挙解決
この記事でわかること VLOOKUPで起きるエラー5種類と、それぞれの主な原因 #N/A・#REF!・#VALUE!・0表示・間違った値が返るときの対処法 IF…
VLOOKUPの限界とXLOOKUPへの乗り換え
VLOOKUPには構造的な制約が4つあります。
- 左側の列を取得できない(検索列より右しか返せない)
- 列を追加すると式が壊れる(列番号がずれるため)
- 複数条件に直接対応していない
- エラー処理にIFERRORが必要
これらをすべて解決したのが XLOOKUP関数です。Microsoft 365またはExcel 2021以降であれば今すぐ使えます。
「今さら覚え直すのが面倒」という気持ちはわかりますが、構文はXLOOKUPのほうがシンプルです。VLOOKUPで複雑な組み合わせを使い始めたタイミングが、乗り換えのサインだと思ってください。
⇩ XLOOKUP関数の詳しい解説はこちら ⇩
【脱VLOOKUP】XLOOKUP関数の使い方を解説!列数え不要・エラー処理もこれ1本で完結
この記事でわかること XLOOKUPの基本の使い方(コピペOKの数式付き) 受注管理表を使った実務シミュレーション #N/Aエラーをなくす方法 スピル・複数条件…
よくある質問(FAQ)
Q. VLOOKUPのFALSEとTRUEの違いは何ですか?
A. FALSEは「完全一致」、TRUEは「近似一致(それ以下で最も近い値)」です。商品IDや社員番号を検索する通常用途では必ずFALSEを使ってください。TRUEが活躍するのは、評価ランク表や送料テーブルのように「数値の範囲で区分を当てはめる」ときに限られます。
Q. 検索値が見つからないとき何も表示しないようにできますか?
A. できます。=IFERROR(VLOOKUP(…), “”) のようにIFERRORの第2引数を “” にすると空白になります。ただし、本来あるべきデータが取れていないのに空白になるとミスに気づきにくくなるため、運用上は「登録なし」などの文字を表示するほうが安全です。
Q. VLOOKUPとHLOOKUPの違いは?
A. VLOOKUPは縦方向(列)、HLOOKUPは横方向(行)の検索です。通常のマスタ表は縦に項目が並んでいるためVLOOKUPを使うのがほとんどで、HLOOKUPを使う場面はかなり限られます。
まとめ
VLOOKUPは「検索して対応するデータを取り出す」Excelの定番関数です。
- 構文は =VLOOKUP(検索値, 範囲, 列番号, FALSE) の4つ
- 別シート参照はシートタブをクリックするだけで自動入力される
- 複数条件は作業列を使うか、XLOOKUPに切り替えると解決
- エラーが出たら原因の9割は「検索値の不一致」か「列番号のズレ」
VLOOKUPは覚えやすく強力ですが、使い込むほど「列番号の管理」と「左方向の検索不可」という壁に当たります。まずはこの記事の基本構文をマスターして、物足りなくなったタイミングでXLOOKUPに切り替えてみてください。
文/Habiny







DIME MAGAZINE















