「Microsoft Excel(エクセル)」で数式を使っていると、セルに「#N/A」「#DIV/0!」「#VALUE!」といったエラーが表示されることがある。こういった表示は報告書や資料としては見栄えが悪く、受け取った相手を混乱させてしまう原因にもなる。そこで、IFERROR関数を使って、このようなエラー表示を回避する方法を紹介する。
対象:Excel 2021/2024/365
「Microsoft Excel(エクセル)」で数式を使っていると、セルに「#N/A」「#DIV/0!」「#VALUE!」といったエラーが表示されることがある。これらは計算が正しくないことを示す重要なサインだが、報告書や資料としては見栄えが悪く、受け取った相手を混乱させてしまう原因にもなる。
そこで、このようなエラー表示を回避する方法を紹介しよう。エラー表示がなくなりスマートな表が作成できるようになるはずだ。
エラー表示を回避するには、エラーが表示される可能性がある数式に対して、IFERROR関数を使って指定した数値や文字列に置き換えればよい。
IFERROR関数は、数式がエラーになったかどうかをチェックし、もしエラーであれば指定した値を、エラーでなければ数式の計算結果をそのまま表示する、という非常にシンプルな関数だ。IFERROR関数の引数の「値」にはエラーかどうかをチェックしたい数式やセル参照を指定し、「エラーの場合の値」は「値」がエラーとなった場合に表示させたい数値や文字列を指定する。
=IFERROR(値, エラーの場合の値)
次に少し具体的な例を示して、IFERROR関数を使ったエラー表示の回避方法を紹介しよう。
エラーとして比較的目にしやすいのは、店舗や商品ごとの前年比や前期比を計算する際などに、分母が「0」になることで発生する「#DIV/0!(ゼロ除算)」エラーだろう。新店舗や新商品などの場合、分母となる前年や前期の値がないため、分母が「0」になってしまい「#DIV/0!」エラーが発生してしまう。
エラーとなった場合は「0」とすることで、エラーの連鎖を防ぎ、後続の計算(AVERAGE関数など)にも影響を与えなくするとよい。
それには、単純に前年や前期の値が入っているセル番号で割り算するのではなく、IFERROR関数を使って以下のように数式を入力する。
=IFERROR(E2/D2,"")
この例では「""(ダブルクォーテーションを2つ)」として空欄にしている。空欄にしておけば、AVERAGE関数で正しい平均値が計算できる。「0」としたい場合は、「""」の部分に「0」を入力すればよい。また、ハイフンにしたい場合は「"-"」を指定する。
VLOOKUP関数を使って参照先のリストから該当する商品名や価格などの検索値を読み取るというのは、Excelでよく使う方法だろう。ただ、参照先のリストに該当する商品名や価格などがない場合、VLOOKUP関数は「#N/A」エラーを返すため、セルに「#N/A」が入力されてしまう。
エラーとなることで、商品コードの入力ミスなどに気付くというメリットもある。しかし、表の見栄えはあまり良くない。このような場合は、IFERROR関数を使って「#N/A」エラーの代わりに「該当商品なし」などのメッセージが表示されるようにするとよい。
=IFERROR(VLOOKUP(E2,A2:C21,2,FALSE), "該当商品なし")
Copyright© Digital Advantage Corp. All Rights Reserved.