Excelで特定の値を検索して対応するデータを取り出すとき、従来は VLOOKUP関数 や HLOOKUP関数 が使われていました。しかし、列番号の指定や検索方向の制約などで使いづらい部分がありました。そこで登場したのが XLOOKUP関数 です。XLOOKUPは、縦横どちらの方向でも検索でき、従来のLOOKUP関数の弱点を解消した、より直感的で使いやすい関数です。
XLOOKUP関数とは?
XLOOKUP関数は、指定した検索値を範囲から探し、対応する値を返す関数です。
- VLOOKUP関数 / HLOOKUP関数 / LOOKUP関数 の後継
- 縦・横どちらの方向にも対応
- 検索値が見つからない場合のエラー処理が簡単
書式
=XLOOKUP(検索値, 検索範囲, 戻り範囲, [見つからない場合], [一致モード], [検索モード])
引数の説明
- 検索値:探したい値を指定します。
- 検索範囲:検索対象のセル範囲を指定します。
- 戻り範囲:検索結果として返す値がある範囲を指定します。
- 見つからない場合(任意):検索値が見つからなかったときに返す値。
- 一致モード(任意):検索の一致方法を指定します。
- 0:完全一致(省略時)
- -1:完全一致、または検索値以下の最大値
- 1:完全一致、または検索値以上の最小値
- 2:ワイルドカード一致(
*や?を使用)
- 検索モード(任意):検索方向を指定します。
- 1:先頭から(省略時)
- -1:末尾から
- 2:昇順で二分探索
- -2:降順で二分探索
使用例
例1:商品コードから商品名を検索する
💡 たとえば、「商品コード P003 の商品名を表示したい」場合。

セル F6 に次の式を入力します👇
=XLOOKUP(F3,B3:B7,C3:C7,"該当なし")
検索値
F3:ここではセルF3に入力されている「P003」を指定します。
実際に探したい商品コードなどを入力します。
検索範囲
B3:B7:検索対象となるセル範囲です。
「P001」「P002」などのコード一覧から、F3の値(P003)を探します。
戻り範囲
B2:B6:検索結果として表示したい値の範囲です。
商品コードが見つかったときに、対応する商品名を返します。
見つからない場合
“該当なし”:検索値が存在しなかった場合に表示されるメッセージです。
これを指定しておくと、#N/Aのようなエラーが出ず、見やすい結果になります。

➡ 結果:オレンジ
活用例
- 商品名から価格を取得
- 社員番号から氏名や部署を取得
- 年度から売上実績を自動表示
注意点
- Excel 2019以前には非対応
XLOOKUPはMicrosoft 365 / Excel 2021以降で利用可能です。 - 戻り範囲と検索範囲は同じサイズが必須
サイズが違うとエラーになります。 - 近似一致のバイナリ検索は昇順・降順に並んでいることが前提
関連関数
| VLOOKUP関数 | 縦方向の検索専用 |
| HLOOKUP関数 | 横方向の検索専用 |
| INDEX関数 + MATCH関数 | 柔軟な検索方法 |
まとめ
XLOOKUP関数は、Excelの検索関数の決定版として、従来のVLOOKUP/HLOOKUPの欠点を解消し、柔軟でシンプルな構文を提供します。
関連記事:VLOOKUP関数の使い方
関連記事:HLOOKUP関数の使い方