IFERROR(イフエラー)関数は、数式のエラーを消してくれる関数です。

【構文】

=IFERROR(値, エラーの場合の値)

【使用例】

  • =IFERROR(B2/B5,0)
    セルB2/B5の結果でエラーが表示される場合は「0」を代入する。エラーではない場合は、そのまま答えを出力する

この数式は他の関数と異なって、エラーが出力された数式に対して上書き設定をします。つまり、空白セルにアクティブセルを置いてから数式を作成するフローではないため、手入力操作してしまったほうが早いです。

関数説明

以下のサンプルデータは、前月比を求めた結果です。

しかし、「赤坂見附」・「新橋」・「日本橋」の3営業所は11月のデータがないため、分母を0で割ってしまっています。

そのため、「#DIV/0!(ディバイド・バイ・ゼロ)」というエラーが出力されてしまいました。

このまま報告書としてレポートを出力するには見栄えがよくありません。こういうときに、IFERROR関数を使ってエラーを除去します。

イコールの後ろにカーソルを置いてください。

半角英数の入力モードであることを確認して、手入力で「IFE」と3文字入力します。すると、数式オートコンプリートによってIFERROR関数が表示されました。

キーボードの[TAB]キーを押してください。=IFERROR( まで入力がされます。

カーソルを右側に移動します。

カンマ 0 括弧閉じるを入力して完成です。

Enterキーで確定。あとはオートフィルですべてのデータに反映させてください。

エラーはすべて「0」に置き換わりました。

前月比 0%という表示もおかしいといえばおかしいのですが、むやみに「"-"」を入れたり「""」として空白セルを出力するのもすっきりしません。

無反応の印として「0」でいいでしょう。

#DIV/0(ディバイド・バイ・ゼロ)

分母をゼロで割ると定義ができない! というのをちょっと知っておくといいかもですね。

3/0.1 = 30
3/0.01 = 300
3/0.001 = 3000
3/0 = プラス無限大

3/-0.1 = -30
3/-0.01 = -300
3/-0.001 = -3000
3/0 = マイナス無限大

となってしまうので、分母のゼロは定義ができないということになります。

さえちゃんのIFERROR関数ワンポイントアドバイス

空白セルの出力「""」に注意することと、なんでもかんでもエラーを消せばいいというわけでもありません。エラーも集計時は情報の一つなので、消してしまうと逆に不都合が生じる場合があります

空白セルはダブルクォーテーションを2つ重ねる「””」と出力されますが、見た目は空白セルになります。ただし、本当の空白セルではないんですね。

試しに、[ホーム]タブ→[条件を選択して選択]→[空白セル]にチェックを入れて、本当に空白セルになっているかどうか確かめてみましょう。

このとおり、エラーが出力されます。つまり、空白セルは存在しない、というエラーになります。

IFERROR関数の数式を削除して、完全な空白セルにすると、こういう結果になります。

そのためIFERROR関数で見えている空白セルは、数式に基づいて出力された空白セルであり、セル内には実際の数式が含まれているため、通常の空白セルではないのです。

どういうときに不都合を発生させるかというと、マクロ処理などの組み込み時にエラーを発生させる要因となりますので、もしマクロ処理を組み込んでいる場合は十分にご注意ください。

もうひとつ、IFNA(イフエヌエー・イフ・ノン・アプリカブル)関数という関数も同じ処理を行います。こちらは「#N/A(ノーアサイン)」のエラーを消すだけのものですが、一般的に知られているのはこちらの関数ですので、IFERROR関数をお使いください。

IFNA=ノン・アプリカブル→適切でなかったら