
Googleスプレッドシートで「同じスプレッドシート内の別シート」や、「別のスプレッドシート」にある表などから、VLOOKUP関数を使ってデータを抽出する方法をご紹介します。
VLOOKUP関数で「別シート」を参照する

例:=VLOOKUP(A2,'別シート'!$A$2:$B$4,2,FALSE)
【手順】
- 値を抽出したいセルに
=VLOOKUP(検索値,まで入力します。 - そのまま別シートのタブをクリックし、「検索範囲」をマウスでドラッグして選択します。
- 抽出したい「列番号」と「FALSE(完全一致)」を指定し、
Enterを押します。
VLOOKUP関数の引数:(検索値, 範囲, 列番号, [検索方法])
VLOOKUP関数で「別のスプレッドシート」を参照する

IMPORTRANGE関数を使い「表などの範囲」を読み込み、そこから検索値を探します。初回読み込み時のみ「REF!」エラーが出るので、「アクセス許可」をクリックします。
例:=VLOOKUP(A2, IMPORTRANGE("URL","シート1!A2:B4"),2,FALSE)
✅ 記述のポイント
- URL:別のスプレッドシートのURLをそのまま貼り付け、ダブルクォーテーションで囲います。(例:
"https...") - 範囲の文字列:抽出したいデータのあるシート名とその範囲を、ダブルクォーテーションで囲って記述します。シート名と範囲の間には半角の「
!」を挟みます。(例:"シート1!A2:B4")
IMPORTRANGE関数の引数:(スプレッドシートのURL, 範囲の文字列)
📖 IMPORTRANGE関数の詳しい解説は「IMPORTRANGE関数の基本とエラー別解決策」の記事をご覧ください。
上位互換のXLOOKUP関数を使おう!

これまではVLOOKUP関数を使うのが主流でしたが、現在は上位互換の「XLOOKUP関数」を使うのがおすすめです。
- 別シートの例:
=XLOOKUP(A2,'別シート'!A2:A4,'別シート'!B2:C4) - 別のスプレッドシートの例:
=XLOOKUP(A2, IMPORTRANGE("URL","シート1!A2:A4"),IMPORTRANGE("URL","シート1!B2:B4"))
💡 ポイント:
「別のスプレッドシート」を参照する場合はVLOOKUP関数よりも数式が長くなりますが、次のようなメリットがあります。
- まとめて複数の値を抽出できる:VLOOKUP関数は1列ずつしか抽出できませんでしたが、XLOOKUP関数は1つの式で隣り合う列をまとめて表示できます。
- 右側の列も検索できる:VLOOKUP関数で検索できるのは左端の列のみですが、XLOOKUP関数は検索範囲を自由に指定できます。
- 水平方向も検索できる:VLOOKUP関数は垂直方向に検索しますが、XLOOKUP関数は水平方向にも検索できます。
- 単体でエラー回避できる:VLOOKUP関数はIFERROR関数と組み合わせる必要がありますが、XLOOKUP関数には「見つからない場合の値」を指定できます。
XLOOKUP関数の引数:(検索キー, 検索範囲, 結果の範囲, [見つからない場合の値], [一致モード], [検索モード])
📖 XLOOKUP関数の詳しい解説は「XLOOKUP関数の使い方!VLOOKUPとの違いを徹底解説」の記事をご覧ください。