いまさら聞けないExcelの使い方講座

【Excel】セルに「#DIV/0!」や「#VALUE!」と表示された!エクセルで数式は正しいはずなのにエラーが出る理由と対処法

「#DIV/0!」や「#VALUE!」というエラーが表示された!

 Excelで売上表などの資料を作る際、自分で数式を作成したり、数式が設定されたシートを編集したりすることがあると思います。数式は正しいはずなのに、なぜかエラーが発生してしまった……という経験はありませんか。

 数式を使った計算で発生するエラーには、さまざまな種類がありますが、今回はそのなかでも、「#DIV/0!」と「#VALUE!」というエラーを取り上げます。この2つのエラーに遭遇したことのある読者も多いことでしょう。この2つのエラーが発生する理由と対処法を解説します。

「#DIV/0!」が表示される理由と対処法

 「売上表」(①)の例を見てみます。この表では、月ごとの「売上金額」と「前月比」を記録しています(1月のデータがないので2月の「前月比」の欄はありません)。前月比は「当月の売上金額÷前月の売上金額」という式で計算しています。

 D列の「前月比」の欄には、すべて正しい数式が入力されているはずですが、セルD8には「#DIV/0!」(②)というエラーが表示されています。なぜでしょうか。

 「#DIV/0!」は、数値を0で割った時に生じるエラーです。セルD8には「=C8/B8」(③)という数式が入力されていますが、数式が参照するセルB8の値は「¥0」(④)になっていますね。つまり、「0」による割り算を行ってしまっているためにエラーが発生しているのです。

 余談ですが、「#DIV/0!」の「DIV」は、割り算を意味する英単語“division”から来ているので、割り算に関するエラーだと覚えておくとよいですね。

 「#DIV/0!」が表示される時は、IFERROR関数を使って対処します。IFERROR関数は「=IFERROR(値,エラーの場合の値)」という書式で記述します。この関数を使うと、数式の結果にエラーが発生した場合に、どのように表示するかを指定できます。

 では、実際にやってみましょう。セルD8だけにエラーが発生していますが、D列のすべてのセルに対してIFERROR関数を適用します。D列の先頭のセル(D4)に「=IFERROR(C4/B4,"該当なし")」(⑤)と入力します。この式は「『C4/B4』の計算結果がエラーだったら『該当なし』と表示する」という意味です。

 [Enter]キーを押して数式を確定すると、計算結果が表示されます(⑥)。

 この数式をD列のほかのセルにもコピーしてみます。セルD4をクリックした状態でセルの右下にマウスポインターを乗せるとマウスポインターの形が変わるので(⑦)、そのままセルD9までドラッグします(⑧)。

 先ほどエラーが出ていたセルD8には「該当なし」と表示され、エラーは消えました(⑨)。

「#VALUE!」が表示される理由

 「給与支給表」(①)の例を見てください。この表では、「給与」欄の金額と「ボーナス」欄の金額を足し合わせて「総支給額」を計算しています(「給与+ボーナス」という式で求めています)。

 D列のすべてのセルには、正しい数式が入力されているはずですが、セルD3には「#VALUE!」(②)というエラーが発生しています。

 「#VALUE!」は、数式に文字列が含まれている時に生じるエラーです。セルD3には「=B3+C3」(③)という数式が入力されていますが、数式が参照するセルC3には「なし」(④)という文字列が入力されていますね。したがって、エラーが発生しているのです。

 このような場合、どのように対処したらよいでしょうか。次の項で詳しく解説していきます。

「#VALUE!」の対処法

 「#VALUE!」が表示される場合の対処法は2つあります。まず1つ目は、文字列を「0」と見なして計算する方法です。

 [ファイル]タブ→[オプション]をクリックして[Excelのオプション]画面を表示しましょう。[詳細設定](①)をクリックして、スクロールバーを下方向にドラッグしていきます(②)。[計算方法を変更する]をクリックしてチェックマークをONにします(③)。

 [OK](④)をクリックして[Excelオプション]画面を閉じ、シートに戻ります。

 するとエラーは表示されなくなりましたね(⑤)。

 もう1つの方法は、「+」を使った演算の代わりにSUM関数を使うやり方です。SUM関数では、計算対象のセル範囲に文字列が含まれている場合、無視して計算が行われます。したがって、エラーは発生しません。

 現在、セルD3には「=B3+C3」(⑥)という数式が入力されていますが、これをSUM関数に書き換えてみましょう。

 セルD3に「=SUM(B3:C3)」(⑦)と入力します。

 [Enter]キーを押して数式を確定します。エラーは表示されなくなりました(⑧)。

 D列のほかのセルにも数式をコピーして、完成です。

「#DIV/0!」や「#VALUE!」が表示されても焦らない

 今回は、Excelで発生するさまざまなエラーのうち、「#DIV/0!」と「#VALUE!」というエラーが表示される理由と対処法を解説しました。

 エラーが発生する理由と対処法がわかっていれば、焦らずに対応できますよね。もしこれらのエラーに遭遇することがあったら、思い出してみてくださいね。

今月のExcelTips