VLOOKUPとXLOOKUPの違い
XLOOKUP は VLOOKUP の置きかえとして作られた新しい関数です。違いは大きく5つあり、どれも VLOOKUP でつまずく所をなくすためのものです。
どちらを使うか
新しく書くなら XLOOKUP。使える環境(Microsoft 365 / Excel 2021 以降)なら、VLOOKUP を選ぶ理由はほとんどありません。ただし Excel 2019 以前の人にも配るファイルでは XLOOKUP が使えないので、そのときは VLOOKUP を使います。
違うところ(5つ)
| 見るところ | VLOOKUP | XLOOKUP |
|---|---|---|
| 探す列より左を返せるか | 返せない。探す列がいちばん左にないといけない | 返せる。探す範囲と返す範囲を別々に書く |
| VLOOKUP でどうしてもやるなら INDEX と MATCH を組み合わせる | ||
| 既定の一致 | 近似一致。4つめを省くと、並べ替えていない表で間違った行を返す | 完全一致。省いてもそのまま使える |
| VLOOKUP の事故のいちばん多い原因。4つめに FALSE を書き忘れると静かに間違う | ||
| 見つからないとき | #N/A。IFERROR や IFNA で包む | 4つめに「見つからないときの値」を直接書ける |
| IFERROR で包むと、ほかのエラーまで隠れてしまう | ||
| 列を挿入したとき | 壊れる。3つめが「左から何番目」の数なので、列を増やすとずれる | 壊れない。返す範囲を列で指している |
| 表を育てていくと必ずぶつかる違い | ||
| 下から探す・部分一致 | できない | 6つめで下から探せる。5つめでワイルドカードも選べる |
| 「最後に一致したもの」を取りたいときに効く | ||
気をつけるところ
XLOOKUP で書いたファイルを Excel 2019 以前で開くと #NAME? になります。関数が無いためで、値は戻りません。配る相手の版が分からないときは VLOOKUP のままにするか、値で貼り直してから渡します。