使い勝手良し!新関数【XLOOKUP】解説
2021年のアップデートで使用できるようになった
関数【XLOOKUP】は、非常に使い勝手が良いので
ご紹介せずにはいられません(笑)
なお、この関数はMicrosoft 365、Excel2021以降であれば、
使用できますので、未だ試していない方は是非とも試用してみてください。
(Excel2019は残念ながら使用不可)
XLOOKUPとは
指定した検索値をキーワードに表や範囲から
行ごとに情報を検索し、値・結果を返す関数です。
基本的にはVLOOKUPと同じ性質がある関数です。
関数の構成はどんなか?
関数の構成要素は↑の画像からも分かる通り6つです。
数式構成:
= XLOOKUP ( ①検索値 , ②検索範囲 , ③戻り範囲 , ④見つからない場合 , ⑤一致モード , ⑥検索モード )
No. | 必須・オプション | 入力 or 選択するもの |
---|---|---|
① | 必須 | “検索対象” の “キーワード” or “セル” を選択 |
② | 必須 | キーワードを検索する範囲を選択する |
③ | 必須 | 関数の結果、得られる値(がある範囲)を選択する |
④ | オプション | キーワードが無かった場合に返す値、いわゆるIFERROR関数の部分。 ※記述が無い場合は「#N/A」が返される |
⑤ | オプション | 「完全一致」か「近似値」の選択する。 ※記述が無い場合は「完全一致」 |
⑥ | オプション | 「昇順」か「降順」を選択する。 ※記述がない場合は「昇順検索」先頭から検索開始する |
まとめると以上になります。
オプション項目は、記入省略「可」です。
XLOOKUPの優れたところ
私、個人的には以下の事だと思います。
①検索範囲の一番右側にキーワードを持ってこなくても良い
②エラーが出た際に返す値も決められる
③昇順・降順どちらで検索を掛けるか、選択できる
特に、VLOOKUP関数の最大の欠点であったと思われる、
「検索範囲の一番右側にキーワードを持ってこなくてはならない」
が解消されている事は非常に助かります!
加えてVLOOKUP関数の場合は、
エラーが出た場合の処理は、別途【IFERROR関数】を
設定しなければならなかったのが、XLOOKUP関数は
この関数1本で完結するので
これまた、ユーザーの事を考えてくれた良いUpdateだと思います。
③はあまり意識しませんでしたが、
VLOOKUP関数はその性質上、
検索範囲の1番上からキーワードを探していきます(昇順)。
これを検索範囲の「一番下」からも
キーワードを探す事も可能になったのです。
「バイナリ検索」という聞き慣れない選択肢もあったので調べてみると、どうやら処理速度向上のための検索のようで、ここでは説明を省きます。
◆例題◆
それでは実際に例を用いて
このXLOOKUP関数を使用してみたいと思います。
『売上明細』のSheetのD列に各商品の単価を記入する場合、
このXLOOKUP関数を使用して、
別Sheetの『単価表』B列から抜き出してみましょう。
この場合の数式は以下の通りです。
=XLOOKUP( 商品名, “単価表”のA列, “単価表”のB列, [以降はオプション] )
基本的に範囲は「列ごと指定」してしまった方が良いでしょう。
その方が楽ですし、間違いありません。
無事に意図した単価が引っ張れてきたかと思います。
もしもエラーが出た場合は?
数式に誤りがない場合は、
以下の2つをまずは疑ってみてください。
1.検索値(キーワード)に細かな “ズレ” が生じていないか?
→[ひらがな or カタカナ] [半角 or 全角] [スペースの有 or 無] 等
2.そもそも参照元(単価表)にキーワードがないのではないか?
→新しく追加された項目(例題では商品)があれば、参照元の表に要追加
何と言ってもVLOOKUP最大の欠点の
「検索範囲のキーワードを必ず一番右端の列に持って来る」
を全く考慮せずにOKだという事で劇的に使い勝手がよくなりました。
みなさんにも是非、試してもらいたいです。
以上何かの参考になれば幸いです。