Excel。以上未満の条件で表引きするならXLOOKUP関数がオススメです。
<XLOOKUP関数>
AからEに分かれたランク一覧から、得点ごとのランクを表引きしたいのですが、
VLOOKUP関数でやってみたら、表引きすることができませんでした。
C2の数式は、
=VLOOKUP(B2,$E$2:$F$6,2,TRUE)
と設定しています。
検索値は、B2で、範囲は、E2:F6として絶対参照の設定もしている。
列番号もランクの2にしている。
そして、検索方法は、近似値のTRUE。
数式には問題はないのですが、表引きするためのE2:F6の表が問題なのです。
何が問題なのかというと、今回のような近似値でVLOOKUP関数を使いたい場合、表引きの範囲は、昇順で作らないといけません。
では、E列を昇順で並べ替えをしてみます。
表引きが出来たことが、確認できました。
このようにVLOOKUP関数をつかうと、確かに、表引きはできるのですが、範囲の表が昇順でなければいけないというのが、ネックです。
通常、このような表は、降順で作成します。
そこで、VLOOKUP関数でもいいのですが、XLOOKUP関数をつかってみるという方法があります。
C2にXLOOKUP関数をつかった数式を設定しました。
=XLOOKUP(B2,$E$2:$E$6,$F$2:$F$6,"",-1,1)
範囲が降順のままでも、ランクを表引きすることができました。
XLOOKUP関数の数式を確認しておきましょう。
最初の引数は、検索値です。 B2 を設定します。
2つ目の引数は、検索範囲です。
オートフィルで数式をコピーするので、$E$2:$E$6 と絶対参照を設定します。
3つ目の引数は、戻り範囲です。
ランクの列なので、$F$2:$F$6。
こちらもオートフィルで数式をコピーするので、絶対参照を設定します。
4つ目の引数は、見つからない場合です。
空白で表示したいので「””」と「””(ダブルコーテーション×2)」と設定します。
5つ目の引数は、一致モード。
今回は完全一致ではありません。
「-1」と設定します。
「-1」は完全一致または、次に小さい項目を表引きしてくれます。
内輪の数なので、小さい項目を選ぶ必要があります。
6つ目の引数は、検索モード。
「1」と設定します。
データの上部から下部へ検索させます。
あとは、オートフィルで数式をコピーします。
ただ、今回は、VLOOKUP関数との違いも含めて紹介しました。
そのため、オートフィルで数式をコピーするようにしましたが、XLOOKUP関数は、ネスト機能に対応していますので、範囲のところを絶対参照にしなくても、次のように数式を設定すれば大丈夫です。
=XLOOKUP(B2:B6,E2:E6,F2:F6,"",-1,1)