Knowledge‎ > ‎

Excelで「#DIV/0!」などのエラーを表示させない


Excelで、割る数に0を指定した割り算を行うと(算術的に演算不可能であるため)「#DIV/0!」というエラーが表示されてしまいます。

例えば以下の場合、C1には「#DIV/0!」と表示されます。
セル セルの内容 表示
A1 5 5
B1 0 0
C1 =A1/B1 #DIV/0!

このエラーを表示させない方法についてです。※「#N/A」や「#NAME?」などでも、同じ方法で対応可能です。


IF文を使い、エラー時に空文字を出力する


C1の内容を以下に書き換えます。
=IF(B1=0, "", A1/B1)
もしくは
=IF(ISERROR(A1/B1), "", A1/B1)

これで、「#DIV/0!」は表示されなくなります。

エラー時に0を表示させたりハイフンを表示させたりと、自由度が高い方法です。しかしこの方法だと、元のセルの内容を変更する必要があり、メンテナンス性が悪くなります。


条件付き書式で「見えない」ようにする

そこで考えました。条件付き書式で何とかならないものかと。そして「見えない」ようにする方法を考えました。

条件付書式の設定で以下の設定にする
条件:「数式が」「=ISERROR(C1)」
書式:フォント色 = 白

「表示させない」ではなく(表示はされているが)「見えない」ようにするという(姑息な)方法です。この方法なら、元のセルを変更せずに済みます。ただし、「見えない」ようにすることしかできず、0やハイフン表示などは出来ません。


印刷時に表示させない方法

エラーは画面上は表示させたままで、印刷時にのみ出力しない方法です。

ページ設定→シート(タブ)→
「セルのエラー」を「<空白>」もしくは「--」にする

この方法は、簡単な設定のみで実現できます。しかし画面上の表示は変更できません。またすべてのエラーに対し一律「<空白>」もしくは「--」に変更するので自由度が低いといえます。


どの方法も一長一短あります。状況に応じて適切な方法を選択してください。


2012/10/20