Excel関数 逆引き集 | 左方向検索 → XLOOKUP

Excel VBA Excel
スポンサーリンク

概要

「左方向に検索したい」「VLOOKUP だと右側しか取れない…」
そんな悩みを一発で解決するのが XLOOKUP です。

XLOOKUP は 検索列と返す列を自由に指定できる ため、
「右→左」「左→右」「上下どちらでも」自在に検索できます。
さらに、エラー処理・部分一致・複数条件など、VLOOKUP の弱点をすべて克服した“次世代LOOKUP関数”です。


基本の使い方

書式

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

最低限必要なのは 検索値・検索範囲・戻り範囲 の3つだけ。

左方向検索の基本形

=XLOOKUP(E2, B2:B100, A2:A100)

意味をかみ砕くと:

  • 「E2 の値を」
  • 「B2:B100 の中から探して」
  • 「見つかった行の A2:A100(左側の列)を返す」

VLOOKUP では不可能だった「右→左」の検索が、XLOOKUP なら簡単にできます。


具体例

商品コード(右側)から商品名(左側)を取得

マスタの構造がこうだとします:

  • A列:商品名
  • B列:商品コード

注文シートで、E2 に商品コードを入力したら、F2 に商品名を表示したい。

=XLOOKUP(E2, $B$2:$B$100, $A$2:$A$100)

見つからないときにメッセージを表示

=XLOOKUP(E2, $B$2:$B$100, $A$2:$A$100, "コード未登録")

入力が空欄のときは何も表示しない

=IF(E2="","",XLOOKUP(E2,$B$2:$B$100,$A$2:$A$100,"コード未登録"))

応用テンプレート

部分一致(前方一致)で検索

=XLOOKUP(E2 & "*", $B$2:$B$100, $A$2:$A$100, "なし", 2)

一致モード「2」はワイルドカード一致。

最後に一致した値を返す(下から検索)

=XLOOKUP(E2, $B$2:$B$100, $A$2:$A$100, "なし", 0, -1)

複数条件で検索(LET+FILTER併用)

=LET(
 key, (C2:C100=H2) * (D2:D100=I2),
 FILTER(A2:A100, key)
)

XLOOKUP 単体では複数条件はできないため、FILTERと組み合わせるのが定石。

数値と文字列の型違いを吸収して検索

=XLOOKUP(TEXT(E2,"00000"), TEXT($B$2:$B$100,"00000"), $A$2:$A$100)

よくあるつまずきと対策

検索範囲と戻り範囲の「行数」が違うとエラー

XLOOKUP は 検索範囲と戻り範囲のサイズが一致している必要があります

VLOOKUP のように「列番号」は不要

戻り範囲を直接指定するため、列挿入でズレる心配がありません。

完全一致がデフォルト

VLOOKUP と違い、XLOOKUP は 完全一致が標準
FALSE を書き忘れて誤検索する心配がありません。

見つからないときのエラー処理が簡単

第4引数にメッセージを書くと、IFERROR が不要になります。


例題

問題1: 商品コードが B列、商品名が A列のマスタから、E2 の商品コードに対応する商品名を F2 に表示してください。

=XLOOKUP(E2, $B$2:$B$100, $A$2:$A$100)

問題2: 上記検索で、見つからない場合は「未登録」と表示してください。

=XLOOKUP(E2, $B$2:$B$100, $A$2:$A$100, "未登録")

問題3: E2 が空欄のときは空表示、それ以外は商品名を表示してください。

=IF(E2="","",XLOOKUP(E2,$B$2:$B$100,$A$2:$A$100,"未登録"))

問題4: B列の商品コードに対して、最後に一致した商品名を A列から取得してください。

=XLOOKUP(E2, $B$2:$B$100, $A$2:$A$100, "未登録", 0, -1)

問題5: 商品コードが部分一致(前方一致)する商品名を取得してください。

=XLOOKUP(E2 & "*", $B$2:$B$100, $A$2:$A$100, "未登録", 2)

まとめ

XLOOKUP は VLOOKUP の完全上位互換であり、
左方向検索・エラー処理・部分一致・上下検索 がすべて簡単にできます。

押さえるべきポイントは次の4つ。

  • 検索範囲と戻り範囲を自由に指定できる
  • 完全一致が標準で安全
  • 見つからないときのメッセージを簡単に設定できる
  • 左方向検索が一行でできる

これを理解すれば、マスタ参照・台帳管理・検索処理が一気にスマートになります。

タイトルとURLをコピーしました