【Excel】XLOOKUP関数の使い方(Excel365/2021)
Excel365やExcel2021から、XLOOKUP(エックスルックアップ)という新しい関数が使えるようになりました。
これはこれまでもあったVLOOKUP関数の上位互換となる新関数です。
今回はこのXLOOKUP関数の使い方を紹介したいと思います
XLOOKUP関数でできること(VLOOKUP関数との違い)
XLOOKUP関数の使い方の前に、この関数でできることを簡単に紹介します。
基本的に、XLOOKUP関数でできることはVLOOKUP関数と同じです。
例えば、上のような社員名簿があったとき、IDから氏名や年齢などを抽出することができます。
これはこれまでのVLOOKUP関数でもできるのですが、XLOOKUP関数では1つだけVLOOKUP関数ではできないことがあります。
それは、下から上方向に検索することです
先ほどの例でいくと、何かのミスで同じIDを持つ社員が2名になったとします。
そのとき、VLOOKUP関数では一番上のセルにある社員の情報を抽出します。これはVLOOKUPが上から下方向に検索して、最初にマッチした情報を抽出するからです。
それに対して、XLOOKUP関数では下から上方向に検索することができます。
そのため、VLOOKUP関数ではできなかった一番下のセルにある社員の情報を抽出することが可能となります。
XLOOKUP関数の使い方
XLOOKUP関数はVLOOKUP関数の上位互換のため、使い方も基本的に同じです。
1つだけ異なるのが、検索方法を指定する値が1つ増えていることです。
XLOOKUPで指定する値
=XLOOKUP( 検索値 , 検索範囲 , 戻り配列 , [見つからない場合] , [一致モード] , [検索モード])
XLOOKUPで指定する値
引数 | 説明 |
---|---|
検索値 | 検索する値 |
検索範囲 | 検索する配列または範囲 |
戻り配列 | 返す配列または範囲 |
[見つからない場合] | 有効な一致が見つからない場合は、指定した [見つからない場合] テキストを返します。 |
[一致モード] | 一致の種類を指定します。 |
[検索モード] | 使用する検索モードを指定します。 |
XLOOKUPではこの6個の値を引数として指定できます。そして、前半の5個はVLOOKUP関数とほぼ同じです。
※列番号が戻り配列に変わっていますが、番号でなくセル範囲(例えばB1:B100など)になっただけです。
大事なのは、一番最後の検索モードです。
値 | 内容 |
---|---|
1 | 先頭から検索(既定値) |
-1 | 末尾から逆方向に検索 |
2 | 昇順で並べ替えられた検索範囲を使用してバイナリ検索(二分検索)。並べ替えられていない場合はエラーとなります。 |
-2 | 降順で並べ替えられた検索範囲を使用してバイナリ検索(二分検索)。 並べ替えられていない場合はエラーとなります。 |
検索モードでは表の4つの値を指定できます。
値1だとVLOOKUP関数と同じように上から下へ検索。値-1だと反対に下から上方向へ検索することができます。
このように、検索モードを指定することによって検索方向を変えることができます。
基本的に、VLOOKUP関数の上位互換のため、これからはXLOOKUP関数を使うことをおすすめします。
(ただし、古いExcelも使うのならVLOOKUP関数もまだまだ現役です)