こんにちは。デザイナーの真琴です。
世間ではコロナウイルスが猛威をふるっている中、
我が家では3歳の長男の仮面ライダーブームが猛威をふるって父親のおこづかいが脅かされてます。
以前、EXCELの【VLOOKUP関数】より便利な【INDEX関数】&【MATCH関数】の紹介をしました。
気になる方は、下記のリンクからどうぞ。
あんなに便利なものなのに、なんでみんな使わないんだろうと思っていたのですが、答えは簡単でした。 単純に覚えられない!!
=INDEX($F$5:$G$10,MATCH(A5,$F$5:$F$10,0),2)
指定が多いので覚えにくいですね。。。
なので、もっとカンタンにらくらくと使えないものがないかと探していたら
すごいものをみつけました!!
【VLOOKUP関数】の進化系の【XLOOKUP関数】です!!
今日は、新関数の【XLOOKUP関数】について説明していきます。
※Office365ではなく、パッケージ版や旧バージョンのEXCELでは使用できません。
=XLOOKUP(検索値,検索範囲,戻り配列,[見つからない場合],[一致モード],[検索モード])
引数名 | 説明 |
---|---|
検索値 (必須) | 検索の対象とするセルを指定します。 |
検索範囲(必須) | 検索の対象とするセルやセルの範囲を指定します。 |
戻り配列 (必須) | 検索の結果として返すセルやセルの範囲を指定します。 | 見つからない場合 (省略可能) | 見つからない場合に返す値を指定します。 |
一致モード(省略可能) |
一致の種類を指定します。 0:完全一致(デフォルト) -1:完全一致または次に小さい項目 1:完全一致または次に大きい項目 2:ワイルドカード文字との一致 |
検索モード(省略可能) |
順序を指定します。 1:先頭から末尾へ検索(デフォルト) -1:末尾から先頭へ検索 2:バイナリ検索(昇順で並び替え) -2:バイナリ検索(降順で並び替え) |
この引数をみたら気づく方もいると思います。そうなんです!
【VLOOKUP関数】だと見つからない場合は[#N/A]とエラーが出てしまうので、
【IFERROR関数】+【VLOOKUP関数】の組み合わせで使ってたのですが、
【XLOOKUP関数】ならその必要がありません。
かなり、入力を短縮できるようになりました。
例えば今までは、
=IFERROR(VLOOKUP(R2,A1:F13,2,FALSE),””)
だったのが、
=XLOOKUP(R2,B2:B13,A2:A13)
以上になります。
すごい短縮になりますよね。
※1 【VLOOKUP関数】だと検索値が指定範囲の一番左にないと検索できない。
【INDEX関数】&【MATCH関数】を使ってそのデメリットをカバーしていた。
※2 【VLOOKUP関数】だと検索順の指定ができなかったため、強制的に上部からの検索になっていた。
※3 【VLOOKUP関数】だと不要セルだとしても指定範囲全てを検索していた。
処理が約400倍高速化さてたらしいです。(待ち時間があるほどの大量データを処理したことがないのでなんとも言えませんが。。。)
【VLOOKUP関数】の弱点を補った待望の関数です。
以前の【VLOOKUP関数】よりも超高機能になっており、しかも直感的に操作できます。
今のところ文句のつけようがない関数だと感じてます。
実際にEXCELに入力して、解説します。
=XLOOKUP(検索値,検索範囲,戻り配列,[見つからない場合],[一致モード],[検索モード])
=XLOOKUP(E2,A2:A8,B2:C8,”該当なし”,0,1)
戻り配列を複数列選択した場合、複数の検索が可能です。
例では、E5にしか関数が入っていませんが、戻り配列をB:C列選択しているので下図の用に配置されます。
今までは、見つからない場合エラー表示のまま放置するか、【IFERROR関数】を使って空白にするか任意の文字列にしていたと思いますが、
【XLOOKUP関数】の[見つからない場合]に任意ので指定できるようになりました。
対象商品が複数ある場合、上から検索するのと下から検索するのでは結果が変わってきます。
1:先頭から末尾へ検索(デフォルト)↓↓↓
先頭からの検索なので、3行目のバナナのデータが表示されます。
-1:末尾から先頭へ検索 ↓↓↓
末尾(下から)の検索なので、6行目のバナナのデータが表示されます。
使い方によってはかなり有能な機能になってます。
該当のデータが1つずつで重複のない場合は、デフォルトのままで大丈夫です。
Office365でEXCELを使ってる人は必ず覚えておきましょう。と言い切ってもいい関数です。
【VLOOKUP関数】なんてもう要らないんじゃない?!使ってたら恥ずかしいってなってもおかしくない。
「Excel関数で1つしか使ったらだめ」といわれたら間違いなくこの【XLOOKUP関数】を選びます。
そのくらい作業効率がよくなります。
僕自身、まだ使い出したばかりですが、完全に【XLOOKUP関数】の虜にです(笑)
使い込んで更に使いやすい方法などあれば追記していこうと思います。
皆さんもぜひ、使ってください。