
「VLOOKUPでは左の列を参照できない…」
「検索エラーが見づらくて困る…」
そんな課題を解決するのが XLOOKUP関数 です。
XLOOKUPは、従来のVLOOKUPやHLOOKUPの機能を補完し、より柔軟かつシンプルに検索・参照が行える新しい関数です。
この記事では、XLOOKUP関数の構文と基本的な使い方、VLOOKUPとの違い、実務で役立つ応用例までわかりやすく解説します。
目次
XLOOKUP関数とは?
- 読み方:エックス・ルックアップ関数
- 用途:任意の列・行から条件に一致する値を検索・取得する関数
構文
=XLOOKUP(検索値, 検索範囲, 戻り値範囲, [見つからないときの値], [一致モード], [検索モード])
引数 | 内容 |
---|---|
検索値 | 探したい値(セルや定数) |
検索範囲 | 検索対象のセル範囲 |
戻り値範囲 | 一致した値に対応する戻り値の範囲 |
見つからないときの値(任意) | 一致しないときに返す値(例:”該当なし”) |
一致モード(任意) | 完全一致/近似一致など(デフォルト:完全一致) |
検索モード(任意) | 上から下、下から上の検索順を指定可能 |
基本的な使い方
例1:社員番号に応じて名前を表示

=XLOOKUP(A2, A5:A10, B5:B10)
→ A2に入力された社員番号をA5:A10で探し、対応するB列の氏名を表示
例2:検索に失敗した場合は「該当なし」と表示
=XLOOKUP(A2, A5:A10, B5:B10, "該当なし")
→ IFERRORを使わずに、エラー処理も含めて1行で書けます
VLOOKUP関数との違い
比較項目 | VLOOKUP | XLOOKUP |
---|---|---|
参照方向 | 左→右のみ | 左右どちらでも可能 |
列番号指定 | 必要(3など) | 範囲を直接指定 |
検索失敗時 | エラー(#N/A) | 任意のテキストを表示できる |
挿入・削除に弱い | 範囲ズレしやすい | 安定した参照が可能 |
水平方向の検索 | HLOOKUPを別で使用 | 同じ関数で対応可能(行単位で指定) |
応用パターン
1. 後方検索(下から上に向かって検索)

=XLOOKUP(1001, A5:A20, B5:B20, "該当なし", 0, -1)
→ 同じ値が複数ある場合、最後の一致を取得します
2. 行方向の検索(HLOOKUPの代替)
=XLOOKUP("3月", A1:F1, A2:F2)
→ 1行目から3月を検索 → 2行目の売上を取得
3. 数値に応じた等級の表示(近似一致)
=XLOOKUP(85, {0,70,90}, {"C","B","A"}, , 1)
→ 85点 →「B」と表示(70以上90未満)
注意点と使い方のコツ
注意点 | 解説 |
---|---|
Excel 365 / 2019以降で使用可能 | 古いバージョン(2016以前)では非対応 |
戻り値範囲と検索範囲は同じ行数または列数である必要あり | |
検索モードや一致モードは必要に応じて活用 | 検索の方向・厳密性を制御可能 |
まとめ|XLOOKUP関数でより柔軟な検索処理を実現しよう
XLOOKUP関数は、VLOOKUPやHLOOKUPの弱点を解消した次世代の検索関数です。
- 列の前後に関係なく検索できる
- エラー処理や一致条件も柔軟に対応
- 実務の検索処理をより正確かつシンプルに
今後のExcel業務では XLOOKUPが検索関数の主流になるといっても過言ではありません。対応バージョンであれば積極的に使いましょう。
関連リンク
- 【解説】ExcelのVLOOKUP関数とは?縦方向の検索で値を取得する方法
- 【解説】ExcelのHLOOKUP関数とは?横方向に検索して値を返す方法
- 【解説】ExcelのIFERROR関数とは?エラー処理をスマートに行う方法
- Excel関数一覧|よく使う関数まとめ
コメント