IFERROR関数はもう不要! XLOOKUP関数の新時代
目次
はじめに
先日 『XLOOKUP関数の衝撃』という記事をアップしました。
- XLOOKUP
- 垂直方向、水平方向の両方(X)の調べ(Lookup)、一致する値を返します。
そこで XLOOKUP関数は VLOOKUP関数やHLOOKUP関数の上位互換であると お伝えしました。
XLOOKUP関数の 文法について教え 上位互換である所以を記載しました。
本記事では、先日の記事では概念 の説明にとどまっていたため、本記事ではより具体的な 説明を したいと思います。
下記の点に関して、実際のサンプルデータを利用して、より具体的に紹介します。
エラー時の処理のため、VLOOKUP関数やHLOOKUP関数とIFERROR関数を併用する必要がなくなった
投稿を編集 “XLOOKUP関数の衝撃” ‹ データ分析ドットコム — WordPress
なお、XLOOKUP関数のお作法に関しては、先日記事を参照ください。
VLOOKUP関数とHLOOKUP関数の問題点
VLOOKUP関数とHLOOKUP関数の時代では、検索条件に合致しない場合は、IFERROR関数を実施して、処理をする必要がありました。
これには、いくつかの問題があります。
- IFERROR関数を使用すると、関数式が複雑になる
- IFERROR関数を使用すると、全てのエラーを無視してしまう(強制的にエラーを無視するように設定しているため)
検索条件に合致しない場合のエラーはOKだが、
それ以外のエラーはクリティカルな関数エラーの可能性もあるためです。 IFERROR関数は無理やりエラーを隠してしまうからです。
VLOOKUP関数を例に進めます。
=IFERROR(VLOOKUP($C13,$C$2:$C$7,2,0),"該当なし") → 該当なし
検索値「C13=A007」は、検索範囲「$C$2:$C$7=商品コード」には存在しないため、VLOOKUP関数はエラーを返します。
IFERROR関数を使用して、存在しない場合は「該当なし」を返すようにしています。強制的にエラーを隠す方法です。
IFERROR関数に関しては、本日時点では、データ分析ドットコムでは取り上げていないため、今後扱えればと思っております。
先程、お伝えしたように、関数式の複雑さに加えて、他のエラーの場合も「該当なし」という結果を返します。
例えば、VLOOKUP関数のスペルを間違えて、「BLOOUP関数」と入力した場合も、「該当なし」という結果を返します。
これは大問題です。 商品コードA007は、データに存在にするのに「該当なし」と表示されてしまうからです。
ミスリードをしている状態です。
XLOOKUP関数の新時代
これからの問題を解決できるのが、XLOOKUP関数です。 まさに、新時代の到来です。
=XLOOKUP(C13,$C$2:$C$7,$D$2:$D$7,"該当なし",) → 該当なし
検索値「C13=A007」を、検索範囲「C$2:$C$7」の中から探して、戻り範囲「$D$2:$D$7」から合致したデータを表示させます。
もし、非該当であれば「該当なし」を表示します。
最大の利点は、検索条件に非該当の場合のみ、「該当なし」と表示されます。 関数式のエラーはエラーとして返してくれます。
VLOOKUP関数やHLOOKUP関数+IFERROR関数の組み合わせでは、
検索条件に非該当でも、関数式にエラーがあっても、同じエラーとして「該当なし」と表示していました。
解答付きサンプルデータ
最後に
本記事では、XLOOKUP関数について、具体的なサンプルデータを用いて解説しました。
また、従来のVLOOKUP関数やHLOOKUP関数との比較も行い、XLOOKUP関数が持つ優位性について説明しました。
具体的には、XLOOKUP関数は、検索条件に合致しなかった場合にも特定の値を表示できる点を詳しく解説しました。
今後も、XLOOKUP関数をはじめとするExcel関数の活用法について、データ分析ドットコムでは引き続き解説していきます。
Excelをより効率的に活用し、ビジネスの成果を最大化するために、ぜひ本サイトをご活用ください。
参考記事
関連記事
Excel関数の原理原則
本記事の読みやすさをさらに向上させるために、Excel関数に関する原理原則についてまとめた記事を紹介します。