Excel一覧 Excel操作・関数 Vlookup データ操作

【Excel】VLOOKUP関数の使い方をやさしく解説|Excelの検索・参照を自動化しよう!

Excelには「関数」と呼ばれる便利な機能がたくさんあります。その中でも、業務や日常のデータ整理で非常によく使われるのが VLOOKUP関数 です。

VLOOKUPを使うと、表の中から特定の情報を自動で検索して表示することができます。「商品コードから商品名を自動表示したい」「社員番号から所属部署を表示したい」といった作業を、1つの関数で簡単にできるようになるのです。

この記事では、Excel初心者の方にもわかりやすく、VLOOKUP関数の基本から実践的な使い方、よくあるエラーの対処法までを詳しく解説します。


✅ VLOOKUP関数とは?何ができるのか

**VLOOKUP(ブイルックアップ)関数は、表の中から特定の値を「縦方向に検索」**して、関連する情報を取得するための関数です。

「V」は「Vertical(垂直)」の略で、縦方向に探すという意味があります。

✅ VLOOKUP関数の基本構文

まずは、VLOOKUP関数の書き方を見てみましょう。

=VLOOKUP(検索値, 範囲, 列番号, [検索方法])

それぞれの項目の意味は以下の通りです。

引数内容
検索値探したい値(例:商品コード、社員番号など)
範囲検索対象となる表全体
列番号取得したい列の番号(範囲内で左から数える)
検索方法「FALSE」で完全一致、「TRUE」で近似一致(通常はFALSEを使う)

✅ 実際の使用例で理解しよう

・商品コードから商品名を表示する方法

▼ 商品マスタ(Sheet2)

A列:商品コードB列:商品名
A001コーヒー
A002紅茶
A003ジュース

▼ 入力シート(Sheet1)

A列:商品コードB列:商品名(自動表示)
A002=VLOOKUP(A2, 商品マスタ!A2:B100, 2, FALSE)

この式では、A2にある商品コード「A002」を「商品マスタ」シートのA列から探し、B列の商品名「紅茶」を表示します。

【Excel】【トラブル解決】VLOOKUPで該当データがあるのにヒットしない原因と対処法|検索値があるのに#N/Aになるときは?


✅ よく使われるVLOOKUPのパターン

【Excel】VLOOKUPで#N/Aエラーが表示される原因と解決方法

・ 社員番号から部署を取得する方法

=VLOOKUP(B2, 社員マスタ!A2:C100, 3, FALSE)

→ 社員番号をもとに、3列目の部署名を取得


・ 顧客コードから顧客名を表示する方法

=VLOOKUP(A2, 顧客マスタ!A2:B100, 2, FALSE)

→ 顧客コードに基づき、顧客名を表示


✅ 「列番号」は“表の左から”数える

VLOOKUP関数では、データを探す「検索列」は表の左端(1列目)でなければなりません

また、「列番号」は検索範囲内で左から数えた番号を指定します。

たとえば、

=VLOOKUP(A2, A2:C100, 3, FALSE)

なら、3列目=C列の値を返す、という意味になります。


■ よくあるエラーとその原因・対処法

エラー原因対処法
#N/A該当するデータが見つからない検索値や検索範囲を見直す(スペース・全角/半角に注意)
#REF!列番号が範囲外検索範囲に合った列番号に修正する
#VALUE!引数の型が違う、数式ミス構文を見直す(特にカンマの位置)
正しい値が返らない検索方法がTRUEになっているFALSE(完全一致)に変更する

■ VLOOKUP関数を使うときのコツと注意点

・ 第4引数は必ず「FALSE」にする

VLOOKUP関数の最後の引数(検索方法)を省略すると、「近似一致(TRUE)」が適用されます。これでは正確な一致が見つからず、意図しない値が返ることがあります。

初心者のうちは、常に以下のように書くのがおすすめです。

=VLOOKUP(検索値, 範囲, 列番号, FALSE)

・ データは昇順に並んでいる必要はない(FALSEの場合)

近似一致(TRUE)では、検索列を昇順に並べる必要がありますが、完全一致(FALSE)であれば並び順は関係ありません。


・ データ更新時は「検索範囲」を拡張する

データが追加されることを想定して、検索範囲を広めに指定しておくのがおすすめです。

例:

=VLOOKUP(A2, 商品マスタ!A2:B1000, 2, FALSE)

→ 将来データが増えても対応可能に

【Excel】範囲を指定してPDF化する方法【必要な部分だけをPDFに!】


■ 別シートのデータも参照できる

VLOOKUP関数は、別のシートやファイルの表も検索可能です。

・別シート参照の例:

=VLOOKUP(A2, 商品一覧!A2:B100, 2, FALSE)

※「商品一覧」が別シートの名前です。

・ 別ファイル参照の例:

=VLOOKUP(A2, '[商品マスタ.xlsx]一覧'!A2:B100, 2, FALSE)し■VLOOKUPでできないことと、その代替方法
やりたいことVLOOKUPでの制限代替方法
左側の列を返したい❌ 不可INDEX+MATCH関数で対応可能
複数条件で検索したい❌ 不可(1つの検索値のみ)ヘルパー列を使って対応可能
動的に列を指定したい❌ 不便(列番号で指定)XLOOKUP関数(Excel 365)を使う

■ よくある質問(FAQ)

Q1. 商品コードを入力しても何も表示されません。なぜ?

A. 検索値と検索対象が完全に一致していない可能性があります。スペース・全角/半角の違い・非表示文字などをチェックしてください。


Q2. 商品名が変わったとき、自動的に更新されますか?

A. はい。VLOOKUPは常に参照している表から最新の値を取得するため、元データを更新すれば自動で反映されます。


Q3. 検索対象が複数の条件にまたがっている場合は?

A. VLOOKUPは1つの検索キーにのみ対応します。複数条件で検索したい場合は「条件を結合したヘルパー列」を使う方法がおすすめです。


■ まとめ:VLOOKUP関数はExcel業務の“自動化の第一歩”!

VLOOKUP関数は、Excelで「表から情報を検索して自動表示したい」というニーズにピッタリの関数です。初心者の方でも、構文とルールをしっかり覚えれば、すぐに活用できるようになります。

  • 商品コードから商品名を表示
  • 社員番号から所属部署を取得
  • 顧客番号から顧客名を表示

といった日常業務を効率化するために、ぜひVLOOKUP関数をマスターして、Excelの自動化・省力化の第一歩を踏み出しましょう!

-Excel一覧, Excel操作・関数, Vlookup, データ操作