メニュー

VLOOKUPで別シート・別ファイル(別ブック)の表から値を引く

VLOOKUPの範囲は、同じシートでなくてもかまいません。別のシートなら「シート名!範囲」、別のファイルなら「[ファイル名]シート名!範囲」と書きます。書き方の決まりと、参照先のファイルを閉じたときの動きを、Microsoftのサポート記事(2026年10月17日確認)をもとにまとめました。

テマゼロAI > 解説ガイド

公開:2026年10月17日 最終更新:2026年10月17日 執筆:板野 克基(株式会社ブライトアセット) 編集方針

この記事の内容

要点

2つの表を貼り付けて、別シートを参照する式を作るVLOOKUP・XLOOKUP式メーカー(無料・登録不要)→

別シートの範囲の書き方

例:「注文」シートのA列に商品コードがあり、「商品一覧」シートのA列〜D列(A列がコード、D列が単価)から単価を引く式です。

=VLOOKUP(A2,商品一覧!$A:$D,4,FALSE)

部分意味
A2探す値(注文シートの商品コード)。$を付けず、下の行へずらします
商品一覧!どのシートの範囲かを示します。シート名の後に「!」
$A:$D商品一覧シートのA列〜D列。左端(A列)が探す列
4範囲の左から4列目(D列)の値を返します
FALSE完全一致で探します

MicrosoftのVLOOKUP関数のページにも、別シートを範囲にした例として =VLOOKUP(A2,'Client Details'!A:F,3,FALSE) が載っています。

手で打たずに入れる方法

  1. 注文シートのセルに =VLOOKUP(A2, まで入力します。
  2. そのまま画面下の「商品一覧」シートのタブを押し、A列〜D列の見出し(列の記号)をドラッグして選びます。
  3. 式に 商品一覧!A:D が入ります。列の記号の前に$を付けて 商品一覧!$A:$D に直します。
  4. 続けて ,4,FALSE) と入力してEnterを押します。

この方法なら、シート名の書き間違いがなく、「'」が必要な名前ではExcelが付けてくれます。

シート名を「'」で囲む場合

Microsoftの外部参照の説明では、シート名やブック名にスペースや英字以外の文字が含まれる場合は、名前を単一引用符で囲む必要があるとしています。ただし日本語だけの名前(例:商品一覧)は、Excelでは「'」なしで通ります。この記事の例もそのまま使えます。

シート名範囲の書き方
4月 売上(スペースあり)'4月 売上'!$A:$D
Client Details'Client Details'!$A:$F
2026年10月(数字で始まる)'2026年10月'!$A:$D

$で範囲を固定する

別シートを参照していても、$の考え方は同じです。商品一覧!A2:D500 のまま式を下にコピーすると、次の行では A3:D501、その次は A4:D502 と範囲が下にずれ、上のほうの商品が範囲から外れます。Microsoftは、絶対参照にすると数式を下方向へコピーしても常に同じ範囲を参照できると説明しています。

書き方コピーしたとき
商品一覧!A2:D500範囲が1行ずつずれる(×)
商品一覧!$A$2:$D$500範囲が固定される(○)
商品一覧!$A:$D列全体を固定。行が増えても範囲に入る(○)

探す値の A2 には$を付けません。付けると、どの行でも同じ商品コードを探してしまいます。

式を書かずに、2つのファイルを突き合わせるExcel・CSV 表の突き合わせ(無料・登録不要)→

別ファイル(別ブック)の範囲の書き方

参照先のファイルを開いている間は、ファイル名を角かっこ[ ]で囲み、その後にシート名と「!」を書きます。Microsoftの例では =SUM([Budget.xlsx]Annual!C10:C25) です。VLOOKUPなら次のようになります。

=VLOOKUP(A2,[マスタ.xlsx]一覧!$A:$D,4,FALSE)

ファイル名にスペースや英字以外の文字が入るときは、ファイル名とシート名をまとめて「'」で囲みます。

'[商品 マスタ.xlsx]一覧'!$A:$D

別ファイルも、両方のファイルを開いた状態で、式の途中で相手のファイルに切り替えて範囲を選ぶのがいちばん確実です。

参照先のファイルを閉じたとき

パスは自分のパソコンや共有フォルダの場所で書かれます。ほかの人が同じ場所にファイルを持っていないと、その人の画面では更新できません。毎回同じマスタを使うなら、マスタを同じファイルの別シートに貼っておくと、リンクの心配がなくなります。

よくあるつまずき

式を作るツールの使い方

VLOOKUP・XLOOKUP式メーカーは、「マスタのシート名」の欄に名前を入れると、シート名と「!」の付いた式を作ります。スペースが入る名前や数字で始まる名前は「'」で囲んで出します(例:「4月 売上」→ '4月 売上'!$A:$C)。範囲には$が付いた状態で出ます。

別ファイルを参照するときは、シート名の欄に [マスタ.xlsx]一覧 のように入れると、全体を「'」で囲んだ '[マスタ.xlsx]一覧'!$A:$C の形で出ます。パスまでは付かないので、参照先のファイルを開いた状態で式を貼ってください。

出典:Microsoft サポート「VLOOKUP 関数」、「ブックへの外部参照 (リンク) を作成する」、「エラー値 #VALUE! SUMIF/SUMIFS 関数のエラー」、「INDIRECT 関数」(いずれも2026年10月17日確認)。

計算はVLOOKUP・XLOOKUP式メーカーで

VLOOKUP・XLOOKUPの使い方に迷ったら、Excelの2つの表を見出しごと貼り付けるだけで式(範囲・列番号・検索方法)を自動作成。#N/Aでうまくいかない行は、空白・全角半角・数値と文字列のどれが原因かを1行ずつ表示します。

VLOOKUP・XLOOKUP式メーカーを使う(無料・登録不要)

公開中のツール 41本・解説ガイド 33本。入力した数字はブラウザの中だけで計算し、サーバーには送りません。

この記事で使えるツール

関連する解説