情報整理術の数々! PICK UP!

【シリーズ:一昔前のExcel(エクセル)で停滞している方へ】進化し続けるエクセルのIF関数を紐解く(その2)

前回は、エクセル2007から追加された「IF」系の関数の内
「SUMIFS」関数を使って、リストから様々な検索データに基づく売上の合計金額を算出してみました。

今回は、算術処理というよりは、エラー処理を扱う関数になります。
数式や関数の結果にエラーが発生する場合に分岐処理ができる
「IFERROR」関数
について見ていきたいと思います。

Excel2007から追加された「IFERROR」関数

エクセルのバージョンアップで、最も変更の大きかった
「エクセル2003からエクセル2007へのバージョンアップ」
において、この「IFERROR」関数の追加も非常に興味を引く内容となりました。

それはなぜかと言うと、「IFERROR」関数の追加によって
「関数式の作成工程を減らせるようになった」
からです。

では、「IFERROR」関数の登場は、関数のヘビーユーザーにどのようなメリットを与えてくれたのでしょうか。

それには、エクセル2003までエラー処理を行う関数であった
「ISERROR」関数
も一緒に見ていく必要があるのです。

「ISERROR」関数の使い方

実際に、「ISERROR」関数を使ったデータを確認してみましょう。

上の表では、単純な計算式を作成しています。
A列の数字をB列の数字で除算しているだけですが、1行目は0で除算しているため結果としてエラーが表示されてしまいます(セルC1)。

このように、何かしらのエラーが表示される場合を見越してエラー処理をしておく場合に、
「ISERROR」関数
を使います。

セルD1には、「=ISERROR(C1)」という関数が入力されています。
つまり、計算結果となる「C1」のセルがエラーとなるか、ならないかを表示しているのです。

そして、E列には、「ISERROR」関数の結果から、「IF」関数で処理を分岐した値が表示されます。

=IF(D1,”式を確認してください”,”○”)

セル「D1」がTRUEなら(エラーなら)、メッセージを表示させ、
FALSE(エラーではない)であれば、「○」と表示させます。

シートに関数を埋め込んで、「ユーザーにシートを使わせる」ような場合は、
ユーザーの誤入力などに対する処理を行う工程は重要となるわけですが、その際にこの「ISERROR」関数はよく使われてきたわけです。

最後は以下のように関数を1つで記述するのが一般的でしょう。

「IF」関数の条件式に「ISERROR」関数を組み合わせるわけですね。

さて、この「ISERROR」関数を使う場合の難点は、やはり
「関数式が長くなる」
不便さでしょう。

2つの関数を組み合わせ、さらに条件分岐が多くなると、「IF」関数がネスト状態となり、数式が煩雑になります。

そこで登場した関数が、「IFERROR」関数なのです。

「IFERROR」関数の使い方

「IFERROR」関数は、引数に「正常な場合の値」と「エラーが出る場合の値」を記述できます。

=IFERROR(A1/B1,”式を確認してください”)

最初の引数に、「セルA1をセルB1で割る式」、
2番目の引数に「式がエラーになった場合、”式を確認してください”」というメッセージを出力するようにしています。

「ISERROR」関数を使って、同じ様に結果を表示した式を作成してみました。
上の「IFERROR」関数と見比べてみると式の長さが一目瞭然ですね。

「ISERROR」関数は、エラーの判定を「TRUE」か「FALSE」でしか結果を返せなかったので、
その判定を元に、最終的に「IF」関数で処理する必要があったのですが、
「IFERROR」関数は、求めたい結果もエラーの場合に処理したい結果もそのまま「値」で返せるようになったので、
関数式がコンパクトに記述できるようになったのです。

続きは次回

関数はもちろん、プログラミングの世界でもエラー処理を行う場面は必ず存在します。
「ISERROR」を始め「IS~」系のエラー処理をする関数は、とても効率が悪くて
私自身、自作で関数を作って処理していた頃もありました。

それに比べれば、「IFERROR」関数の登場で、関数でのエラー処理も少しは楽になったのかもしれませんね。

さてさて、次回はエクセル2010から追加された集計用の関数「AGGREGATE」関数にスポットを当ててみたいと思います。

どうぞお楽しみに!

関連記事

  1. 年末調整で求める年調年税額をエクセルの関数を交えて算出してみる!―その1―

  2. 【シリーズ:人より一歩先行くエクセル技を身につける】ピボットテーブル編②

  3. 【シリーズ:一昔前のExcel(エクセル)で停滞している方へ】集計を行うAGGREGATE関数を使い…

  4. Office365のエクセルにもとうとう登場したスピル!オートフィルや配列数式と比較してみる

  5. 【シリーズ:一昔前のExcel(エクセル)で停滞している方へ】IFNA関数はどう使う?

  6. Excelのスキルを図る企業の入社テストを実際にやってみた【5】

  7. エクセルに標準搭載された3Dマップを活用する![その4]―フィールドリストが重複したら

  8. 【シリーズ:人より一歩先行くエクセル技を身につける】ピボットテーブル編[番外]

  9. Excelのスキルを図る企業の入社テストを実際にやってみた【2】

特集記事!

  1. [CLOVA Note]LINEの音声認識AI搭載で音声データを楽々テキスト化!…
  2. [Teams]自分だけが使うチャットでチャット操作をマスター&アカウントに注意
  3. 【スクリブルがiPadOS15から日本語対応に】メモアプリはApplePenci…
  4. こんなに簡単!おしゃれで自分好みのロゴを作成できる「DesignEvo」が秀逸す…
  5. メールアプリ「Spark」の便利機能その10ー複数で1つのメールアドレスを管理す…
  6. 続・iPadで使うカレンダー:新しい予定表の作成や公開を設定してみる
  7. 街を愛する地域ポータルサイト!個人的に好きな10サイトを選んでみた!(1位~3位…
  8. 街を愛する地域ポータルサイト!個人的に好きな10サイトを選んでみた!(4位~10…
  9. 会社を退職したいけどできない!退職代行サービスの利用で失敗しない方法とは
  10. 自社でメールマガジンを配信したい!メール配信サービス徹底比較6選

人気記事 PickUp!

おすすめ記事

ピックアップ!

  1. Slackとの連携にも必須!Trelloでチームを作成する方法
  2. [slack]24.slackに設定したOneDrive上のMicrosoft3…
  3. [slack]25.メインのメールや予定表にOutlookを使っているならsla…
  4. 【シリーズ:一昔前のExcel(エクセル)で停滞している方へ】進化し続けるエクセ…
  5. 【連載番外】Lucidchartでロジカルシンキングに使う図面を3つ選んでみた
  6. iPadでブログ記事を執筆中!記事内に挿入する画像を編集するならどのアプリを使う…
  7. iPadの時短技3選!無駄な時間を省いて効率よく作業しよう
  8. [slack]28.チャットではカバーしきれない分散される情報をStockで拾う…
  9. [slack]29.チャットではカバーしきれない分散される情報をStockで拾う…
  10. [連載]Windows・Android・iPadOSの異なる環境でメールを同期す…

PAGE TOP