Microsoft Excel では、数値がゼロ (0) で除算されたときに #DIV/0! エラーが表示されます。 この状況は、次の図に示すように、=5/0 のような単純な数式を入力したとき、または 0 や空白のセルを数式で参照したときに発生します。
エラーを解決するには、次のいずれかの操作を行います。
-
関数または数式の除数がゼロまたは空白のセルでないことを確認します。
-
数式のセル参照を、ゼロ (0) または空白値でない別のセルに変更します。
-
数式で除数として参照されているセルに #N/A と入力します。これにより、数式の結果が #N/A に変更され、除数値に使用できないことが示されます。
数式がユーザーからの入力を待機しているために、#DIV/0! エラーを避けられないことがよくあります。 そのような場合、エラー メッセージがまったく表示されないようにするには、入力待機中にエラーを抑制する方法がいくつかあります。
分母で 0 または値なしを評価する
#DIV/0! エラーが表示されないようにする最も簡単な方法は、IF 関数を使用して分母の存在を評価することです。 0 または値なしの場合は数式の結果として #DIV/0! の代わりに 0 または "値なし" を表示し、それ以外の場合は数式を計算します。
たとえば、エラーを返す数式が =A2/A3 の場合、0 を返すには =IF(A3,A2/A3,0) を使い、空の文字列を返すには =IF(A3,A2/A3,””) を使います。 =IF(A3,A2/A3,"入力が必要です") のようにして、独自のメッセージを表示することもできます。 最初の例の QUOTIENT 関数を使うと、=IF(A3,QUOTIENT(A2,A3),0) のようになります。 この式は、IF(A3 が存在する場合は数式の結果を返し、存在しない場合はその結果を無視する) のように Excel に指示します。

IFERROR を使って #DIV/0! エラーを抑制する
IFERROR 関数内に除算演算を入れ子にすることで、このエラー を抑制できます。 再び A2/A3 を使うと、=IFERROR(A2/A3,0) のようになります。 この式は Excel に対し、数式がエラーと評価される場合は 0 を返し、それ以外の場合は数式の結果を返すように指示します。
Excel 2007 より前のバージョンの Excel では、IF(ISERROR()) メソッドを =IF(ISERROR(A2/A3),0,A2/A3) のように使用できます (「IS 関数」を参照)。
注: IFERROR メソッドと IF(ISERROR()) メソッドはどちらも一括エラー ハンドラーであり、#DIV/0! ではなく、すべてのエラーを抑制します。 エラー処理を適用する前に、数式が正しく動作する必要があります。そうしないと、数式が期待した方法で動作しない場合があります。
ヒント: Excel でエラー チェックがオンになっている場合は、エラーを表示するセルの横の
をクリックできます。 これが使用可能でない場合は、[計算の過程を表示] をクリックし、データに対して機能する解決方法を選びます。
特定の関数について質問がある場合
Excel の機能を向上させるためのお願い
次のバージョンの Excel の改善に関して、ご提案はございませんか。 提案がありましたら、Excel UserVoice (Excel ユーザー ボイス) のトピックをご覧ください。