Excelでデータを検索するとき、「VLOOKUPとXLOOKUPは何が違うの?」「どちらを覚えればいいの?」と迷ったことはありませんか。社員名簿から氏名を表示したり、商品コードから商品名や単価を取り出したりする作業は、実務でよく発生します。ただ、仕組みを知らないまま使うと、列を追加しただけで数式が崩れたり、検索できずにエラーが出たりすることもあります。VLOOKUPとXLOOKUPはどちらも検索関数ですが、使いやすさや保守性には大きな差があります。ここでは、初心者の方でも理解しやすいように、基本の違い、使い方、実務での使い分け、よくある失敗まで図解向けに整理して解説します。

👑社員番号から名前を表示したいだけなのに、VLOOKUPの列番号で毎回迷ってしまいますわ……。

🤖検索関数は最初につまずきやすい分野です。ですが、考え方はとてもシンプルです。

👑XLOOKUPも覚えた方がいいと聞きますけれど、VLOOKUPはもう不要なのですの?

🤖既存ファイルではVLOOKUP、新しく作るファイルではXLOOKUP。この軸で考えると、実務ではかなり整理しやすくなります。
VLOOKUPとXLOOKUPの違いを簡単に整理
VLOOKUPとXLOOKUPは、どちらも「検索した値に対応する別の値を取り出す」ためのExcel関数です。たとえば、社員番号を入力すると社員名を表示する、商品コードを入力すると商品名や単価を表示するといった使い方をします。
大きな違いは、VLOOKUPは検索する列が表の左端にある必要があるのに対し、XLOOKUPは検索する列と取得する列を自由に指定できる点です。
| 比較項目 | VLOOKUP | XLOOKUP |
|---|---|---|
| 基本の役割 | 表の左端列を検索して、右側の値を取得する | 検索範囲と戻り範囲を指定して値を取得する |
| 左方向検索 | できない | できる |
| 列番号の指定 | 必要 | 不要 |
| 列追加への強さ | 弱い | 強い |
| エラー時の表示指定 | IFERRORなどを組み合わせることが多い | 関数内で指定できる |
| 古いExcelとの互換性 | 高い | 環境によっては使えない場合がある |
| 初心者の覚えやすさ | 列番号で迷いやすい | 考え方が直感的 |
新しくExcelを学ぶなら、基本的にはXLOOKUPを優先して覚えると扱いやすいです。ただし、会社の既存ファイルにはVLOOKUPが使われていることも多いため、VLOOKUPの仕組みも最低限理解しておくと安心です。

👑「どちらが正解か」ではなく、「今扱っているファイルに合うのはどちらか」で考えると迷いにくくなりますわ。
VLOOKUPとは
VLOOKUPは、指定した表の左端列から検索値を探し、同じ行にある指定列の値を取り出す関数です。Excelの検索関数として長く使われてきたため、今でも多くの業務ファイルに組み込まれています。

図解のポイント
数式
=VLOOKUP(検索値,範囲,列番号,検索方法)
検索の流れ
左端列で検索値を探し、指定した列番号の値を返します。
画像の見方
社員番号の列を左端に置き、同じ行の氏名や部署を右側から取得する流れを矢印で示します。
実務で覚えておきたいポイント
VLOOKUPでは、検索する列が範囲の一番左にないと正しく検索できません。
VLOOKUPの引数
| 引数 | 意味 | 例 |
|---|---|---|
| 検索値 | 探したい値 | 社員番号、商品コード、顧客ID |
| 範囲 | 検索対象となる表全体 | B2:D20 |
| 列番号 | 取得したい列が左から何列目か | 2、3、4 |
| 検索方法 | 完全一致か近似一致か | FALSE、TRUE |
実務では、検索方法にはFALSEを指定するケースがほとんどです。FALSEは完全一致を意味し、社員番号や商品コードのように、完全に一致するデータを探すときに使います。
VLOOKUPの使い方
社員番号を入力して、社員名を表示する例で考えてみましょう。
たとえば、E3セルに社員番号を入力し、B2:C12の社員一覧表から氏名を取り出す場合、次のような数式を使います。
=VLOOKUP(E3,B2:C12,2,FALSE)

図解のポイント
数式
=VLOOKUP(E3,B2:C12,2,FALSE)
各引数の意味
E3は検索したい社員番号、B2:C12は社員一覧表、2は氏名列、FALSEは完全一致検索です。
検索の流れ
E3の社員番号をB列から探し、一致した行のC列にある氏名を表示します。
画像の見方
検索値、検索範囲、返される氏名を色分けして、どこを見ているのか分かるようにします。
実務で覚えておきたいポイント
列番号の2は、ワークシート全体の2列目ではなく、指定した範囲の左から2列目という意味です。
VLOOKUPでよくある失敗
- 検索範囲の左端に検索列がない
- 列番号を間違えて別の項目を表示してしまう
- FALSEを書き忘れて意図しない結果になる
- 検索範囲を途中までしか選択していない
- 検索値が数値、表側のデータが文字列になっている
- データの前後に余分なスペースが入っている
特に初心者の方がつまずきやすいのは、列番号の指定です。表に列を追加すると、以前は2列目だった氏名が3列目になることがあります。その場合、数式の列番号を修正しないと、別の項目を表示してしまう可能性があります。

👑VLOOKUPの列番号は、表を直したあとに見落としやすいところですわ。列追加後は数式も一緒に確認してくださいませ。
VLOOKUPのメリット
VLOOKUPには古い関数ならではの強みがあります。特に、会社で長年使われているExcelファイルを扱う場合は、今でも理解しておく価値があります。
- 古いExcelでも利用できる
- 既存の業務ファイルで使われていることが多い
- 社内マニュアルや過去資料に情報が残っている
- インターネット上の解説が多い
- 基本的なマスタ検索には十分対応できる
たとえば、社員マスタ、商品マスタ、顧客マスタなど、決まったコードから情報を取り出す作業では、VLOOKUPが今でもよく使われています。
VLOOKUPのデメリット
一方で、VLOOKUPには実務上の弱点もあります。特に、表の構成が変わる業務ファイルでは注意が必要です。
- 左方向の検索ができない
- 列番号を数える必要がある
- 列を追加すると数式がずれることがある
- エラー表示を整えるにはIFERRORなどが必要になる
- 複数条件検索では補助列が必要になることが多い
たとえば、商品名から商品コードを取り出したい場合、商品コードが商品名より左側にあると、VLOOKUPではそのまま検索できません。表の列順を変更するか、別の関数を使う必要があります。
XLOOKUPとは
XLOOKUPは、VLOOKUPよりも柔軟に検索できる新しい検索関数です。検索する範囲と、結果として返したい範囲を別々に指定できます。
VLOOKUPのように列番号を数える必要がないため、数式の意味が分かりやすく、後から列を追加しても壊れにくいのが特徴です。

図解のポイント
数式
=XLOOKUP(検索値,検索範囲,戻り範囲,[見つからない場合],[一致モード],[検索モード])
各引数の意味
検索値、検索範囲、戻り範囲の3つをまず覚えれば、基本的な検索はできます。
検索の流れ
検索範囲で値を探し、同じ位置にある戻り範囲の値を返します。
画像の見方
検索する列と表示したい列を別々に色分けし、VLOOKUPとの違いを示します。
実務で覚えておきたいポイント
XLOOKUPは列番号ではなく、実際に返したい列そのものを指定します。
XLOOKUPの引数
| 引数 | 意味 | 初心者向けの覚え方 |
|---|---|---|
| 検索値 | 探したい値 | 何を探すか |
| 検索範囲 | 検索する列または行 | どこから探すか |
| 戻り範囲 | 取り出したい列または行 | 何を表示するか |
| 見つからない場合 | 該当なしのときに表示する内容 | エラーの代わりに出す文字 |
| 一致モード | 完全一致や近似一致の指定 | 検索の厳しさ |
| 検索モード | 上から検索、下から検索などの指定 | 探す方向 |
初心者の方は、まず最初の3つだけ覚えれば十分です。つまり、「何を探すか」「どこから探すか」「何を表示するか」です。

👑XLOOKUPは列番号を数えなくていいので、数式を見直すときも意味を追いやすいですわ。
XLOOKUPの使い方
VLOOKUPと同じように、社員番号から社員名を取得する例で見てみましょう。
=XLOOKUP(E3,B2:B12,C2:C12)

図解のポイント
数式
=XLOOKUP(E3,B2:B12,C2:C12)
各引数の意味
E3は検索したい社員番号、B2:B12は検索する社員番号列、C2:C12は表示したい氏名列です。
検索の流れ
E3の値をB列から探し、一致した行のC列の値を返します。
画像の見方
検索範囲と戻り範囲を別々に強調し、列番号を使わないことを視覚的に示します。
実務で覚えておきたいポイント
検索範囲と戻り範囲の行数はそろえる必要があります。
VLOOKUPでは、B2:C12の表全体を指定し、さらに「2列目」と指定しました。XLOOKUPでは、検索するB列と、表示したいC列を直接指定します。
そのため、後からB列とC列の間に部署列を追加しても、戻り範囲としてC列を指定している限り、意図しない列を返すリスクを減らせます。
XLOOKUPなら左方向検索もできる
VLOOKUPの大きな弱点が、左方向検索に対応していないことです。VLOOKUPは、検索列より右側の値しか取得できません。
一方、XLOOKUPなら検索範囲と戻り範囲を自由に指定できるため、検索列より左側の値も取り出せます。

図解のポイント
数式
=XLOOKUP(“ジーンズ”,D3:D12,C3:C12)
各引数の意味
D3:D12の商品名から「ジーンズ」を探し、C3:C12の商品番号を返します。
検索の流れ
右側の商品名列で検索し、左側の商品番号列の値を取得します。
画像の見方
右から左へ矢印を引き、XLOOKUPでは左方向にも検索できることを示します。
実務で覚えておきたいポイント
表の列順を無理に並べ替えなくても検索できるため、既存レイアウトを崩しにくくなります。
| 検索したい内容 | VLOOKUP | XLOOKUP |
|---|---|---|
| 社員番号から氏名を取得 | 可能 | 可能 |
| 商品名から左側の商品コードを取得 | 不可 | 可能 |
| 顧客名から左側の顧客IDを取得 | 不可 | 可能 |
実務では、すでに完成している一覧表の列順を自由に変えられないことがあります。そのような場面では、XLOOKUPの柔軟さが役立ちます。
見つからない場合の表示もXLOOKUPなら簡単
検索値が見つからない場合、Excelでは#N/Aというエラーが表示されることがあります。作成者は意味を理解できても、入力する人や確認する人にとっては「壊れている」と見える場合があります。
XLOOKUPでは、見つからない場合の表示を数式内で指定できます。
=XLOOKUP(E3,B2:B12,C2:C12,”見つかりません”)

図解のポイント
数式
=XLOOKUP(E3,B2:B12,C2:C12,”見つかりません”)
各引数の意味
最後の「見つかりません」は、検索値が存在しない場合に表示する文字です。
検索の流れ
該当する社員番号があれば氏名を表示し、なければ「見つかりません」と表示します。
画像の見方
#N/Aと表示される例と、「見つかりません」と表示される例を並べて比較します。
実務で覚えておきたいポイント
利用者が入力ミスに気付きやすくなり、問い合わせや確認作業を減らせます。
VLOOKUPでもIFERRORを組み合わせれば同じような表示はできます。ただし、数式が少し長くなるため、初心者にはXLOOKUPの方が読みやすい場面が多いです。

👑エラーを見やすい言葉に変えるだけで、入力する人の不安がかなり減りますわ。
複数条件検索ではXLOOKUPが扱いやすい
実務では、1つの条件だけでは目的のデータを特定できないことがあります。たとえば、商品名が同じでも色やサイズが違う場合です。
このような場合は、商品名とカラー、商品名とサイズなど、複数の条件を組み合わせて検索する必要があります。
VLOOKUPで複数条件検索をする場合
VLOOKUPで複数条件検索を行う場合、検索用の補助列を作る方法がよく使われます。
たとえば、商品名とカラーを結合した補助列を作り、その補助列を検索します。
=VLOOKUP(F3&F5,A3:D12,4,FALSE)

図解のポイント
数式
=VLOOKUP(F3&F5,A3:D12,4,FALSE)
各引数の意味
F3の商品名とF5のカラーをつなげ、同じ組み合わせを補助列から探します。
検索の流れ
補助列に作った結合キーを検索し、該当する価格や在庫数を取得します。
画像の見方
補助列、商品名、カラー、取得結果を色分けし、条件を結合している様子を示します。
実務で覚えておきたいポイント
補助列を作るため、表の管理項目が増える点に注意が必要です。
- 補助列が必要になる
- 表の列数が増える
- 他の人が見たときに意図が分かりにくい場合がある
- 補助列を削除されると数式が壊れる
XLOOKUPで複数条件検索をする場合
XLOOKUPでは、補助列を作らずに条件を組み合わせて検索できます。
=XLOOKUP(F3&F5,B3:B12&C3:C12,D3:D12)

図解のポイント
数式
=XLOOKUP(F3&F5,B3:B12&C3:C12,D3:D12)
各引数の意味
F3とF5を結合した値を、B列とC列を結合した条件範囲から探し、D列の値を返します。
検索の流れ
商品名とカラーの組み合わせが一致する行を探し、その行の価格や在庫数を表示します。
画像の見方
2つの条件列をまとめて検索している様子を、矢印と色分けで示します。
実務で覚えておきたいポイント
補助列を増やさずに済むため、表の見た目をシンプルに保てます。
複数条件検索を多く使う業務では、XLOOKUPの方が管理しやすくなります。ただし、数式に配列の考え方が入るため、最初は少し難しく感じるかもしれません。
実務ではどちらを使うべきか
結論として、新しく業務ファイルを作るならXLOOKUPを優先し、既存ファイルや古いExcel環境ではVLOOKUPも理解しておくのが現実的です。
| 利用シーン | 選びたい関数 | 理由 |
|---|---|---|
| 新しく社員名簿や商品マスタを作る | XLOOKUP | 列追加に強く、数式の意味も分かりやすい |
| 昔からある社内ファイルを修正する | VLOOKUP | 既存の数式に合わせた方が管理しやすい場合がある |
| 検索列より左側の値を取得したい | XLOOKUP | 左方向検索に対応している |
| 複数条件で検索したい | XLOOKUP | 補助列なしで対応しやすい |
| 取引先や社内で古いExcelを使っている | VLOOKUP | XLOOKUPが使えない環境の可能性がある |
自分だけが使うファイルならXLOOKUPを使いやすいですが、複数人で共有するファイルでは相手のExcel環境も考える必要があります。特に、社外へ渡すファイルや古いPCで開く可能性があるファイルでは、XLOOKUPが使えるか事前に確認しておくと安心です。

👑自分のExcelでは動くのに、相手の環境では動かないこともありますわ。共有ファイルでは互換性も大切です。
VLOOKUPが向いている人と場面
VLOOKUPは古い関数ですが、今でも実務で使われています。次のような場合は、VLOOKUPを覚えておくと役立ちます。
- 会社の既存ファイルにVLOOKUPが多く使われている
- 古いExcelを使っている人とファイルを共有する
- 基本的な検索だけできればよい
- 社内マニュアルがVLOOKUP前提で作られている
- 過去の数式を修正する機会が多い
VLOOKUPは、すでにある仕組みを理解するために必要になることが多い関数です。新規作成ではXLOOKUPを使うとしても、VLOOKUPを読めるようにしておくと、既存ファイルの修正で困りにくくなります。
XLOOKUPが向いている人と場面
XLOOKUPは、新しくExcelを学ぶ人や、これから業務ファイルを作る人に向いています。特に、表のメンテナンス性を高めたい場合に役立ちます。
- 新しくExcelファイルを作成する
- 列番号を数えるのが苦手
- 表に列を追加することが多い
- 左方向検索を使いたい
- エラー表示を分かりやすくしたい
- 複数条件検索を使いたい
XLOOKUPは、数式を作る人だけでなく、あとから確認する人にとっても分かりやすい関数です。業務ファイルを長く使う予定があるなら、XLOOKUPを優先すると保守しやすくなります。
初心者が覚える順番
Excel初心者の方は、すべてを一度に覚えようとしなくても大丈夫です。検索関数は、実務で使う順番に学ぶと身につきやすくなります。
- まずはXLOOKUPで基本の検索を覚える
- 検索値、検索範囲、戻り範囲の考え方を理解する
- 見つからない場合の表示を指定してみる
- VLOOKUPの基本構文も読めるようにする
- 既存ファイルでVLOOKUPが使われている箇所を確認する
- 必要に応じて複数条件検索に挑戦する
最初は、社員番号から氏名を表示する、商品コードから商品名を表示するなど、シンプルな例から始めるのがよいです。いきなり複数条件検索や複雑な表に挑戦すると、どこで間違えたのか分かりにくくなります。
実務でよくある検索関数の使い道
VLOOKUPやXLOOKUPは、単なる練習用の関数ではありません。実務では、入力ミスを減らしたり、転記作業をなくしたりするためによく使われます。
- 社員番号を入力すると氏名や部署を自動表示する
- 商品コードを入力すると商品名や単価を自動表示する
- 顧客IDを入力すると会社名や担当者名を表示する
- 売上データに商品マスタの情報を追加する
- 在庫一覧から対象商品の在庫数を取得する
- 請求書や見積書にマスタ情報を反映する
手入力やコピー貼り付けで対応している作業がある場合、検索関数を使うことで作業時間を短縮できる可能性があります。ただし、元になるマスタデータが間違っていると、取得結果も間違ってしまいます。関数だけでなく、元データの整備も欠かせません。
検索関数を使う前に確認したいこと
VLOOKUPやXLOOKUPを使う前に、表の状態を確認しておくとエラーを減らせます。数式が正しくても、データ側に問題があると検索できないことがあります。
- 検索値に重複がないか
- 検索値の前後に余分なスペースがないか
- 数値と文字列が混在していないか
- 表の範囲が途中で切れていないか
- 見出し行とデータ行を間違えていないか
- 共有相手のExcelでXLOOKUPが使えるか
特に、社員番号や商品コードのようなIDは、見た目が同じでも文字列と数値で扱いが異なることがあります。「001」と「1」は別の値として扱われることがあるため、コード体系をそろえておくことが大切です。

👑関数が間違っていると思ったら、実はデータ側の空白や形式違いが原因だった、ということも多いですわ。
VLOOKUPからXLOOKUPへ切り替えるときの注意点
VLOOKUPで作られた既存ファイルを、すべてXLOOKUPに置き換えればよいとは限りません。切り替える場合は、業務への影響を確認しながら進める必要があります。
- 共有相手のExcel環境でXLOOKUPが使えるか確認する
- 既存の数式結果とXLOOKUPの結果が一致するか確認する
- 一度に全シートを置き換えず、影響範囲を分けて確認する
- マスタデータの重複や形式違いも同時に見直す
- 変更前のファイルをバックアップしておく
特に、毎月の請求、在庫、売上集計などに使っているファイルでは、関数の置き換えによる影響が大きくなる場合があります。見た目上は同じ結果でも、エラー処理や検索方法の違いで結果が変わる可能性があるため、慎重に確認しましょう。
よくある質問
VLOOKUPとXLOOKUPはどちらから覚えればよいですか?
新しくExcelを学ぶなら、XLOOKUPから覚えると理解しやすいです。検索値、検索範囲、戻り範囲の3つを指定するだけで基本的な検索ができます。ただし、会社の既存ファイルではVLOOKUPが使われていることも多いため、VLOOKUPの仕組みも読めるようにしておくと安心です。
VLOOKUPはもう使わなくてもよいですか?
完全に不要とは言い切れません。古いExcel環境や既存の業務ファイルでは、VLOOKUPが今でも使われていることがあります。新規作成ではXLOOKUPを優先しつつ、既存ファイルを扱うためにVLOOKUPも理解しておくと実務で困りにくくなります。
XLOOKUPが使えないExcelがありますか?
あります。XLOOKUPは比較的新しいExcelで使える関数です。古いバージョンのExcelでは使えない場合があるため、社内や取引先と共有するファイルでは、相手のExcel環境を確認しておくと安心です。利用可否は、最新情報を公式情報で確認してください。
VLOOKUPで#N/Aが出る原因は何ですか?
検索値が表の中に存在しない、検索範囲の左端列が間違っている、数値と文字列が混在している、余分なスペースが入っている、といった原因がよくあります。数式だけでなく、元データの形式や空白も確認してみてください。
XLOOKUPならIFERRORは不要ですか?
検索値が見つからない場合の表示だけであれば、XLOOKUPの引数で指定できます。そのため、単純な#N/A対策ではIFERRORを使わずに済むことが多いです。ただし、別の種類のエラーもまとめて処理したい場合は、IFERRORが役立つ場面もあります。
複数条件検索はVLOOKUPでもできますか?
できます。ただし、VLOOKUPでは補助列を作って条件を結合する方法が一般的です。補助列が増えると表が複雑になりやすいため、管理しやすさを重視するならXLOOKUPの方が扱いやすい場合があります。
検索関数を使うときに一番注意することは何ですか?
検索値が一意に決まるかどうかを確認することです。同じ社員番号や商品コードが複数あると、意図しない結果を返す可能性があります。関数を作る前に、マスタデータの重複や表記ゆれを確認しておくと安全です。
おすすめAIツール
VLOOKUPやXLOOKUPの数式で迷ったときは、ChatGPTなどのAIツールを使って考え方を整理する方法もあります。たとえば、「社員番号から氏名を表示するXLOOKUPの数式を作ってください」「このVLOOKUPで#N/Aが出る原因を確認してください」と質問すると、数式の意味や確認ポイントを整理しやすくなります。
ただし、AIが出した数式をそのまま業務ファイルに貼り付けるのは避けた方が安心です。実際の列位置、データ形式、検索範囲に合わせて調整し、必ずテスト用のデータで動作確認を行いましょう。
また、社員名簿や顧客一覧などの個人情報、売上データ、取引先情報をそのままAIツールに入力しないよう注意が必要です。機密情報を伏せたサンプルデータで相談すると、安全に学習しやすくなります。
まとめ
- VLOOKUPとXLOOKUPは、どちらも検索して別の値を取り出すExcel関数です。
- VLOOKUPは古いExcelとの互換性が高く、既存ファイルで今でもよく使われています。
- XLOOKUPは列番号が不要で、左方向検索やエラー時の表示指定にも対応しています。
- 新しく業務ファイルを作るなら、XLOOKUPを優先すると保守しやすくなります。
- 既存ファイルや古いExcel環境を扱うなら、VLOOKUPの基本も理解しておくと安心です。
- 検索関数を使う前に、検索値の重複、データ形式、余分な空白を確認することが大切です。
最初からすべての検索パターンを覚える必要はありません。まずは社員番号から氏名を表示する、商品コードから商品名を表示するなど、身近なデータで1つずつ試してみると理解が深まります。実務では、関数そのものよりも「どのデータを探し、どの値を返したいのか」を整理することが大切です。


