ExcelのXLOOKUPとVLOOKUP、どちらを使う?違いと選び方をやさしく解説
この記事でわかること
- 新しく数式を作るなら、基本的にはXLOOKUPを選ぶと扱いやすい理由
- 古いExcelとの互換性が必要なときに、VLOOKUPを残す判断基準
- 完全一致、検索方向、列追加に対する強さの違い
- それぞれの基本的な書き方と、よくある失敗
結論・重要ポイント
- Microsoft 365などXLOOKUPに対応した環境で新しく作るなら、XLOOKUPが第一候補です。
- XLOOKUPは検索列と戻り値の列を別々に指定でき、検索列の左側にある値も取得できます。
- VLOOKUPはExcel 2016・2019を含む古い環境でも使えるため、共有相手のバージョンによっては必要です。
- VLOOKUPで完全一致を使う場合は、最後の引数にFALSEを明示します。省略すると近似一致になります。
- 既存ファイルを無理に一括変換する必要はありません。今後の保守性と互換性を見て選びます。
対象読者と前提知識
この記事は、商品コードや社員番号から名前・価格などを取り出したいExcel初学者向けです。セル参照と、数式が等号(=)から始まることを知っていれば読み進められます。
MAO先生と学ぶXLOOKUP・VLOOKUP
生徒りくちゃん
商品コードから商品名を表示したいのですが、VLOOKUPとXLOOKUPの両方が見つかりました。最初はどちらを覚えるのがよいのですか?
MAO先生
新しいExcelで数式を作るなら、まずXLOOKUPを検討するとよいのです。検索する範囲と答えを返す範囲を別々に指定できるので、数式の目的を読み取りやすくなります。
生徒うみちゃん
じゃあ、VLOOKUPは古いから全部やめて、XLOOKUPに直せばいいじゃん!
MAO先生
結論を急ぎたくなりますよね。ただ、実はVLOOKUPの方がよいケースもあるのです。Excel 2016やExcel 2019を使う人と共有するファイルではXLOOKUPを利用できないため、互換性を優先する必要があります。
生徒りくちゃん
古い環境への配慮も必要ということですね!では、XLOOKUPの方が分かりやすいのは、具体的にどの部分なのでしょうか?
MAO先生
例えばA列の商品コードを検索してB列の商品名を返す場合、XLOOKUPでは検索列と戻り値の列を別々に指定します。具体的な数式は、この後のコピーできる例で確認しましょう。何をしたい数式なのか理解しやすいのです。
生徒うみちゃん
VLOOKUPならどうなるの?同じことができるなら、そんなに違わないんじゃない?
MAO先生
よい疑問ですね!VLOOKUPでは、A列から検索し、指定範囲の2列目を返すように指定します。具体的な数式はこの後に掲載します。最後のFALSEは完全一致を指定する大切な部分です。
生徒うみちゃん
あっ、VLOOKUPは「2列目」みたいに数えるってこと?それなら途中に列を追加したら、返す列がずれることもあるじゃん!
MAO先生
よく気づきましたね!列を追加した後は、VLOOKUPの列番号が正しいか確認する必要があります。また、XLOOKUPは検索列の左右どちらからでも値を返せますが、VLOOKUPは指定範囲の一番左の列を検索するという制約もあるのです。
生徒りくちゃん
既存のVLOOKUPを一度に置き換えると、古いExcelで開けなくなったり、別の箇所に影響したりすることはないのでしょうか?
MAO先生
その慎重さは大切です。正常に動いていて古いExcelとの共有もあるなら、急いで直す必要はありません。新しく作る数式や修正する機会から、利用環境と保守性を確認して切り替えるのが安全なのです。
コード・操作手順・具体例
次のような商品表を想定します。
| A列:商品コード | B列:商品名 | C列:価格 |
|---|---|---|
| A001 | ノート | 200 |
| A002 | ペン | 120 |
| A003 | ファイル | 350 |
E2セルへ商品コードを入力し、商品名を取得する例です。
XLOOKUP
=XLOOKUP(E2,A2:A100,B2:B100,"見つかりません")
- E2:探したい商品コード
- A2:A100:商品コードを検索する範囲
- B2:B100:商品名を返す範囲
- “見つかりません”:一致しない場合の表示
XLOOKUPは完全一致が既定です。最後から検索したい場合などは、必要に応じて検索モードも指定できます。
VLOOKUP
=VLOOKUP(E2,A2:B100,2,FALSE)
- E2:探したい商品コード
- A2:B100:検索列と戻り値を含む表
- 2:指定範囲の2列目を返す
- FALSE:完全一致
VLOOKUPは列番号を数値で指定します。表の途中へ列を追加した場合は、意図した列を返しているか確認してください。
よくある誤解や失敗
「VLOOKUPは必ず古いので使ってはいけない」
誤解です。互換性が必要なファイルや、安定して運用されている既存ファイルではVLOOKUPが適切な場合があります。
VLOOKUPのFALSEを省略する
第4引数を省略すると近似一致が使われます。完全一致で商品コードや社員番号を探す場合は、FALSEを明示した方が安全です。
数字と文字列が混在している
見た目が同じ001でも、数値と文字列では一致しない場合があります。検索値と検索範囲のデータ形式を揃えてください。
余分な空白が含まれている
コピーしたデータに前後の空白や非表示文字が含まれると、一致しないことがあります。必要に応じてTRIM関数やCLEAN関数で整えます。
Q&A
XLOOKUPはExcel 2016・2019で使えますか?
Microsoft公式では、XLOOKUPはExcel 2016とExcel 2019では利用できないと案内されています。古い環境と共有する場合はVLOOKUPやINDEX・MATCHなどを検討します。
XLOOKUPは左方向にも検索できますか?
できます。検索範囲と戻り値の範囲を別々に指定するため、戻り値が検索列の左側でも利用できます。
VLOOKUPを使う場合、最後は必ずFALSEですか?
完全一致が必要な商品コードや社員番号では、通常FALSEを使います。近似一致には用途がありますが、並べ替えなどの前提を理解して使う必要があります。
要点まとめ
- 新規作成でXLOOKUP対応環境なら、XLOOKUPを第一候補にする
- 古いExcelとの互換性が必要ならVLOOKUPも有効
- XLOOKUPは左右どちらの列からも値を返せる
- VLOOKUPで完全一致を使うならFALSEを明示する
- 既存ファイルは、利用環境と保守性を確認してから変更する
公式資料・参考資料
※Microsoft公式情報を2026年6月20日に確認して作成しています。製品の対応状況は更新される可能性があるため、利用中のExcelで関数が使用できるかも確認してください。
MAO工房に相談できます
Excelの関数や日々のPC作業を一緒に整理できます
Excelの表を直したい、関数の選び方が分からない、業務に合う管理方法を相談したいといった内容に、個別指導や業務改善相談で対応します。
- ✓ Excel・Wordの個別指導
- ✓ 既存ファイルの改善相談
- ✓ 業務に合う関数選び