📊つかえる関数.com

VLOOKUPの列番号を可変にして動的に参照する方法は?

数式・計算中級·更新: 2026-02-12
VLOOKUPの第3引数(列番号)にMATCH関数を組み合わせることで、参照する列を動的に変更できます。パターンは`=VLOOKUP(A2, マスタ!A:Z, MATCH(B$1, マスタ!1:1, 0), FALSE)`で、ヘッダー行(1行目)の値に応じて列番号を自動判定します。全バージョンで使用可能で、月別データや支店別データなど列方向にデータが並ぶ場合に非常に便利です。列の追加や削除があっても数式を修正する必要がありません。

📊 バージョン対応

2016
対応
2019
対応
2021
対応
365
対応

📋 実務での使用例

💼 月別売上の動的参照

B1セルに「4月」と入力すると、マスタの4月列から売上を自動取得

=VLOOKUP(A2, マスタ!A:Z, MATCH(B$1, マスタ!1:1, 0), FALSE)

💼 支店別データの動的検索

ヘッダー行に支店名があり、選択した支店のデータを自動で参照する

=VLOOKUP($A2, データ!$A:$Z, MATCH(C$1, データ!$1:$1, 0), FALSE)
VLOOKUPMATCH動的列番号可変範囲ヘッダー
📄

検索関数クイックリファレンス

VLOOKUP / XLOOKUP / INDEX+MATCH の構文・引数・使い分けを1枚にまとめたPDF

準備中※ PDFは現在作成中です。近日公開予定