こちらの記事では、Excelで良く使うVLOOKUP関数で、あるはずの値が見つからない場合の対処法をご紹介しています。
全く同じ値があるのに #N/A エラーが表示されてしまい、値が発見できない時はデータ型の違いが原因で同じ値として判定されず #N/A エラーとなることがよくあります。
VLOOKUP関数であるはずのデータが見つからずに #N/A エラーとなる場合の対処法
あるはずの値が見つからずにエラーとなる場合の対処法の大半は、データ型をそろえることで解決する場合が多いです。
例えば、下記ケース1の場合、101という値をE:F列からVLOOKUP関数で探しています。
同じ 101 という値があるにもかかわらず # N/A エラーとなっています。
エラーの原因は、検索対象のB列が数値、E列の書式が文字列になっていてデータ型が異なることです。
このケースの対処法は、B列のセルの書式を文字列に変更するか、E列を数値にしてデータ型(書式)を合わせることで解決できます。
セルの書式を合わせても #N/A エラーになる場合の対処法
セルの書式を合わせても #N/A エラーになる場合があります。
検索対象が数値のケースで、検索値もしくは検索対象の値で関数が使われている場合に多く発生します。
この場合もデータ型が異なることが原因であることが多いです。
このケースの場合、セルの書式を合わせてもエラーを解決できないことがあります。
例えば下記ケース2のような場合です。
このケース2では、検索対象の書式を数値、そして検索範囲の書式も数値として同じ書式に合わせています。
しかし、#N/A エラーとなってしまっています。
エラーの原因は、 MID 関数にあります。
実は、MID関数の戻り値は データ型が文字列 なのです、そのためいくらセルの書式を合わせたとしてもエラーとなってしまうのです。
このような場合は、戻り値をさらに数値としてキャスト(変換)してあげる必要があります。
数値への変換は VALUE 関数を利用します。
まとめ
VLOOKUP関数で、あるはずの値が見つからずに #N/A エラーとなる場合は、検索値と検索範囲の値のデータ型を合わせることで解決可能。