カテナリーのオフィスブログ

柔らかすぎず、硬すぎず。Officeソフトのあれこれを記録。図書館司書としての本のご紹介も。

【エラーを明示したい時に】IFERRORの基本的な使い方

どうも、先日運転見合わせにより職場の最寄り駅で2時間以上足止めを食らい疲弊した、カテナリーです。
普段は図書館業務や趣味などでOfficeソフトを活用している者です。

先々週の自作問題で、さらっとIFERROR関数を使っていました。
今回は、この関数を特集します。

catenaryoffice.com

この関数は、計算ミスや取り出したいデータが見つからなかった場合に出てくるエラーを、何が原因でそうなっているかを明示できるようにすることで修正しやすくなるメリットがあります。
関数の構造はシンプルなので、ぜひ覚えて活用しましょう。

IFERRORとは

この関数は、指定したセルもしくは計算式でエラーが発生した時に、メッセージが表示内容を変更することが出来るものです。
ここでいうエラーとは「#DIV/0!」「#VALUE!」のことを指します。
引数は次のとおり。

IFERROR( エラーを監視するセルや計算式 , エラー時に表示するメッセージ )

例えば、次のような場合。
図書館である分類ごとの貸出回数を調べていると想定します。
2024年、2025年の2つのデータを比べてその前年比を計算します。

分類Cは2025年から新しく追加されたため、前年度データがなく0となっているため「#DIV/0!」というエラーが出ています。
こういった時にIFERROR関数を使います。

前年比の項目を次のような計算式に置き換えます。

=IFERROR(C8/B8,"NEW")

これは、エラーが出た場合「NEW」という文字を出力するという意味になります。
新しく入力し直した時の結果は次の通り。

このように、出力内容を修正することで見た目を向上させることができます。

第二引数は省略可能

IFERROR関数は2つの引数で構成されていますが、2つ目のエラー時に出力する内容は省略することが出来ます。
なので、先ほどの例だと次のようにすることも出来ます。

=IFERROR(C8/B8,)

この場合、エラー時は0が出力されます。
数字の羅列で使う場合は、他の数字と混同しやすいので出来れば省略しない方がいいでしょう。

IFERRORの中にIFERRORを入れることも可能

長すぎると可読性に欠けてしまいますが、IFERRORの中にさらにIFERRORを入れることもできます

以下その一例です。

お菓子を注文する際に、その合計金額を知るための簡単なツールです。
商品名と仕入れ量を入力することで、合計金額が出力されます。

この時、入力しない商品名が存在しない場合は合計金額のエリアにエラーメッセージが表示されるようになっています。

合計金額には次のような計算式が組み込まれています。
非常に分かりにくくて申し訳ないのですが、IFERRORの括弧だけ色分けしています。

=IFERROR(VLOOKUP(B3,Bデータ!A2:B11,2,FALSE)*B5,IFERROR(VLOOKUP(B3,Aデータ!A2:B11,2,FALSE)*B5,"データがありません"))

まずAデータから商品名を検索し、そこで見つからなかったらBデータを見に行きます。
それでも見つからない場合、"データがありません"を表示することになっています。

…と、こんな感じでIFERRORにIFERRORを入れることが出来ちゃいます。

ただし、IFERRORは「#DIV/0!」「#VALUE!」のエラーを区別することが出来ないことに気を付けてください。
(この例だと、仕入れ量に数字以外のものを入力しても同じエラーメッセージが出る)

まとめ

  • どんなエラーかを明示したい時にはIFERROR
  • IFERRORは複数使えるが長くなることに注意

以上、IFERROR関数についての解説でした。
これ以外にもExcelPowerPointで気になることがありましたら
ぜひコメント等で書いてみてください。
答えられる範囲で答えてみます。

それではまた来週~。