Excel一覧 Excel操作 検索・参照関数(VLOOKUP) 検索・抽出

【Excel】VLOOKUP関数を別シートで使う方法とは?|構文・設定手順・実務活用を徹底解説!

Excelで業務を効率化したい方にとって、VLOOKUP関数(ブイルックアップ関数)は必ず覚えておきたい基本関数の一つです。特に、別シートのデータを参照しながら検索・抽出を行いたいという場面は、商品管理や社員名簿、顧客リストなど、さまざまな業務で登場します。

この記事では、VLOOKUP関数を別シートで使う方法を、構文・記述のルール・実務的な使用例・エラー回避のポイントまでを詳しく解説します。

VLOOKUP関数の基本構文をおさらい

まずは、VLOOKUP関数の基本的な書き方を確認しておきましょう。

=VLOOKUP(検索値, 範囲, 列番号, [検索方法])
  • 検索値:検索したいデータ(例:商品コード、社員番号など)
  • 範囲:検索対象の表(※検索値の列は必ず一番左に)
  • 列番号:返したい値が何列目にあるか(左から数える)
  • 検索方法:完全一致を使う場合は「FALSE」

VLOOKUPを別シートで使うには?

VLOOKUP関数は、同一シートだけでなく、他のシートのデータも自由に参照可能です。別シートの範囲を指定するには、シート名+「!」マークを使って参照します。【Excel】【初心者向け】VLOOKUP関数の使い方をやさしく解説|Excelの検索・参照を自動化しよう!

・ 基本構文(別シート参照)

=VLOOKUP(検索値, シート名!範囲, 列番号, FALSE)

■ 例:

  • 「商品コード」が「Sheet1」のA2セルに入力されており、
  • 「商品マスタ」が「商品一覧」シートのA列~C列に存在するとき
=VLOOKUP(A2, 商品一覧!A2:C100, 2, FALSE)

→ 商品一覧シートのA列で商品コードを検索し、B列(2列目)の商品名を取得します。


■ シート名にスペースがある場合は '(シングルクォーテーション)で囲む

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

→ スペースや記号を含むシート名では必ずシングルクォーテーションで囲むようにしましょう。

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


実務でよくある別シートVLOOKUPの活用例

・社員名簿から部署名を取得する方法

  • 「入力画面」シートに社員番号を入力
  • 「社員名簿」シートに、社員番号・名前・部署が記載されている
=VLOOKUP(A2, 社員名簿!A2:C100, 3, FALSE)

→ 社員番号に一致する行から、部署名(3列目)を取得


・商品コードから商品名を取得する方法

  • 「受注入力」シートに商品コードが入力されている
  • 「商品マスタ」シートに商品コードと商品名が記載されている
=VLOOKUP(B2, 商品マスタ!A2:B100, 2, FALSE)

→ 商品コードに対応する商品名を表示


・複数ブック(ファイル)をまたいで検索する方法

VLOOKUPは別ファイル(ブック)からも参照可能です。ただし、元ブックが閉じていると読み込みが遅くなる場合があります。

=VLOOKUP(A2, '[商品マスタ.xlsx]商品一覧'!$A$2:$C$100, 2, FALSE)

→ 別ブックを参照するときは、ファイル名を [ ] で囲み、シート名と範囲を続ける書き方になります。

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


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

エラー原因対処法
#N/A検索値が見つからない検索値とマスタの形式(スペース・全角半角)を確認
#REF!列番号が範囲外範囲内の列数より大きい列番号になっていないか確認
#VALUE!引数が間違っている第4引数(検索方法)に「FALSE」を指定する
常に同じ結果になる絶対参照が原因必要に応じて $ を付ける、または外す

VLOOKUP×別シート活用のポイント

・ 絶対参照($)の使い方をマスターしよう

数式をコピーして他のセルに貼り付ける際、参照範囲がズレると誤動作します。
範囲を固定するには、**絶対参照($A$2:$C$100)**を使います。


・ テーブル機能を使えばさらに便利

参照先のデータを**テーブル化(Ctrl + T)**しておくと、列の追加や並び替えに強く、VLOOKUPでも名前付き範囲のように扱えます。

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

→ 「商品マスタ」はテーブル名として定義


・ 一致方法は「FALSE(完全一致)」を基本に

第4引数(検索方法)を省略すると「TRUE(近似一致)」になります。
業務上は「完全一致」を使うケースがほとんどなので、必ず FALSE を明示的に記述しましょう。


■ VLOOKUPの代替関数にも注目:XLOOKUPとの違い

Excel 365 / 2021以降では、XLOOKUP関数が登場しており、VLOOKUPより柔軟な使い方が可能です。

機能VLOOKUPXLOOKUP
左方向検索❌ 不可✅ 可能
列番号指定✅ 必要❌ 範囲で直接指定
エラー処理IFERRORなどで補完関数内で第4引数で直接対応
検索速度△(大規模データで重くなる)◎(より効率的)

■ 条件付きでVLOOKUPの参照先を切り替えるには?

条件によって別シートを参照させたい場合は、IF関数と組み合わせてVLOOKUPの検索範囲を動的に切り替えることも可能です。

=IF(B2="法人", VLOOKUP(A2, 法人マスタ!A2:C100, 2, FALSE), VLOOKUP(A2, 個人マスタ!A2:C100, 2, FALSE))

→ 「B2の顧客区分」によって参照先のシートを切り替える例

【Excel】PDFを取り込む方法【データを活用するテクニック】


■まとめ:VLOOKUP関数を別シートで使いこなして、Excel業務の効率を飛躍的に向上させよう

VLOOKUP関数を別シートで使えるようになると、Excelの使い方は一気に広がります。マスタデータを一元管理しつつ、入力シートから自動的にデータを取得できるようになるため、業務の効率と正確性が大幅に向上します。

ポイントは以下の通りです:

  • シート名+「!」で別シートを正しく参照する
  • スペースのあるシート名は ' で囲む
  • 範囲は絶対参照にしてズレを防止
  • 第4引数には 必ずFALSEを指定して完全一致にする
  • 複数シートやブックを組み合わせて使えば、より強力な自動化が可能に

実務に役立つテンプレートや活用例を繰り返し試しながら、VLOOKUP関数を使いこなしていきましょう!

    -Excel一覧, Excel操作, 検索・参照関数(VLOOKUP), 検索・抽出