Posted in

Excel 関数:XLOOKUP

XLOOKUP は、Excel 365 / Excel 2021 以降で使える強力な検索・参照関数で、従来の VLOOKUPHLOOKUPINDEX + MATCHこれ1つで置き換え可能です。


🔧 書式(構文)

=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])
引数説明
lookup_value検索する値(探したい値)
lookup_array検索対象の範囲(キーが含まれる列や行)
return_array見つかったときに返す値の範囲(結果列)
[if_not_found]見つからなかった場合に返す値(省略可)
[match_mode]検索方法(完全一致など)
[search_mode]検索の方向(最初から/最後から)

🧪 基本の使用例

例:IDから名前を検索する

データ(A2:B5):

AB
1001Sato
1002Tanaka
1003Yamada
1004Suzuki
=XLOOKUP(1002, A2:A5, B2:B5)

✅ 結果:Tanaka


🧰 オプションの引数を使った例

=XLOOKUP(9999, A2:A5, B2:B5, "該当なし")

✅ 結果:該当なし(存在しない値に対しての代替)


🔍 match_mode(一致モード)

説明
0完全一致(既定)
-1以下の最大値
1以上の最小値
2ワイルドカード使用(*, ?

🔁 search_mode(検索方向)

説明
1上から下に検索(既定)
-1下から上に検索

XLOOKUP のメリット(VLOOKUP との比較)

VLOOKUPXLOOKUP
検索列は必ず一番左に必要任意の列で検索可能
列番号で返す範囲で指定(列を追加しても壊れない)
デフォルトが近似一致デフォルトが完全一致
横方向のみ縦横両対応(行検索も可能)
見つからないと #N/A"見つかりません" などカスタマイズ可

🧠 応用例

名前で社員番号を取得(下から検索)

=XLOOKUP("Tanaka", B2:B10, A2:A10, "なし", 0, -1)

ワイルドカードを使った検索(例:「*田」)

=XLOOKUP("*田", B2:B10, A2:A10, "該当なし", 2)

📌 関連関数

  • VLOOKUP:旧来の縦方向検索(非推奨)
  • HLOOKUP:横方向検索(非推奨)
  • INDEX + MATCH:柔軟だが複雑
  • FILTER:複数条件の抽出や複数結果の返却が可能

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です