XLOOKUP関数の使い方と検索の新常識

Excel

はじめに

Excelで「データを検索して取り出す」作業といえば、従来は VLOOKUP や HLOOKUP が定番でした。
しかし、これらは「左方向に検索できない」「列番号を数える必要がある」などの制約があり、実務では不便を感じることも多かったのではないでしょうか。

その不満を解消するために登場したのが XLOOKUP関数 です。
XLOOKUPは 柔軟でわかりやすい構文 を持ち、VLOOKUPの後継といえる強力な関数。この記事では基本から応用までわかりやすく解説します。


XLOOKUP関数の基本

書式

=XLOOKUP(検索値, 検索範囲, 戻り範囲, [見つからない場合], [検索モード], [一致モード])

  • 検索値 : 探したい値
  • 検索範囲 : 検索する列や行
  • 戻り範囲 : 結果を返す列や行
  • 見つからない場合(省略可): 該当がないときの表示内容
  • 検索モード(省略可): 先頭から検索か、末尾から検索かを指定
  • 一致モード(省略可): 完全一致や近似一致の指定

基本例:商品コードから商品名を取得

A列B列
101りんご
102みかん
103ぶどう

セル D1 に「102」と入力し、商品名を取り出す場合👇

=XLOOKUP(D1, A2:A4, B2:B4, "該当なし")

👉 「102」を検索し、対応する「みかん」を返します。該当がなければ「該当なし」と表示されます。


XLOOKUPのメリット

  • 左右どちらの方向でも検索可能(VLOOKUPのような制限なし)
  • 列番号ではなく「戻り範囲」を直接指定できる
  • 見つからない場合の値を設定可能(IFNAと組み合わせ不要)
  • 検索方法(完全一致・近似一致・逆検索)を柔軟に選べる

応用テクニック

左方向検索

=XLOOKUP(検索値, C2:C10, A2:A10)

👉 VLOOKUPではできなかった「左方向検索」も可能。

見つからなかったときに任意のメッセージを表示

=XLOOKUP(検索値, A2:A10, B2:B10, "データなし")

逆検索(最後に一致するものを探す)

=XLOOKUP(検索値, A2:A100, B2:B100, "該当なし", -1)

👉 データの末尾から検索することもできます。


類似する検索関数の紹介

XLOOKUPを理解したら、他の検索関数との違いも知っておくと選択肢が広がります。

VLOOKUP関数

  • 検索列は範囲の左端に限定
  • 列番号指定が必要
  • 古いExcelでも使える

    👉 VLOOKUPについてはこちら

HLOOKUP関数

  • 横方向(行)を検索できるが制約が多い
  • 実務ではあまり使われなくなっている

INDEX + MATCH関数

  • 柔軟な組み合わせでVLOOKUPの制限を回避可能
  • ただし数式が長くなる

FILTER関数(Excel 365以降)

  • 条件に合致する複数の結果を一度に返せる
  • XLOOKUPよりさらに柔軟だが新しい関数のため利用環境が限定される

注意点

  • XLOOKUPは Excel 365 / 2021以降 で利用可能
  • 古いExcelでは使用できないため、互換性を考えるなら VLOOKUP や INDEX+MATCH を検討
  • 戻り範囲と検索範囲は「同じ行数(または列数)」である必要がある

まとめ

  • XLOOKUPはVLOOKUPの後継となる強力な検索関数
  • 左右どちらの方向にも検索可能で、列番号の指定不要
  • 「見つからなかった場合の値」を直接指定できる
  • 類似関数(VLOOKUP、INDEX+MATCH、FILTER)と比較して、シンプルで使いやすい

コメント