8/25/2014

Excel。IFERROR関数じゃダメな時ってどんな時?前編


Excel。IFERROR関数じゃダメな時ってどんな時?前編

IFERROR関数とIF関数


Excelの講座で、IF関数を使って、エラーを表示させない方法を紹介した後に、
テキストによっては、IFERROR関数をご紹介する流れになっていたりします。
仕事でつかえるExcel講座などの実践的な講座でも、初心者向けの講座であっても、
このIFERROR関数をご紹介していくのですが、このIFERROR関数に関して、
あるご質問が出てくるのです。

それは、
IFERROR関数で全部OKじゃないの?IF関数(のネスト)を使う必要はないのでは?
とか、
IF関数(のネスト)を使った方がいいのか?IFERROR関数を使った方がいいのかが、
わかりません。

という質問なのです。

まずIFERROR関数についでですが、この関数は、結果がエラーだったら、
どう処理をしますか?という関数なのです。

下記の表をご覧ください。

F13に、単価×数量の数式を入れてみます。=D13*E13ですね。
そして、オートフィルハンドルを使って、F20まで数式をコピーしてみましょう。

すると、F18以降で、エラーが表示されましたね。この#VALUEは、数値がはいっていないよ。
というエラーです。

空欄だったので、エラーが発生した訳です。

今回の様な請求書ですと、案件によっては、1件だけだったり、全部うまっていたりと、
様々な案件数になる訳でして、その都度、数式をコピーするのでは、間違いの元。
かといって、このエラーが表示されたまま、印刷してお客様に渡すわけにも行きませんよね。

そこで、どうやってエラーを表示させないようにすればいいかというと、
まず、IF関数を使ってみましょう。
算出しましたF13:F20までのデータを削除しておきます。

F13をクリックして、IF関数のダイアログボックスを表示しましょう。
もし数量が空白だったら、空白。
そうでなかったら、単価×数量というIF関数を作っていきましょう。

論理式は、E13=””
真の場合は、””
偽の場合は、D13*E13
と入力をして、OKボタンをクリックして、オートフィルハンドルを使って、
F20までコピーしてみます。

今回はエラーが表示されませんでした。

今度は、この計算式をまた削除して、今度は、IFERROR関数を使用してみましょう。
F13をクリックして、IFERROR関数のダイアログボックスを表示しましょう。

値には、単価×数量の計算式、すなわち、D13*E13を入力します。
エラーの場合の値には、エラーが出た時にどうしますか?ということですから、
空白にしたいので、””を入力します。

あとは、OKボタンをクリックして、オートフィルハンドルでF20までコピーします。
こちらでもエラーが表示されませんでした。

基本的に、IF関数でもIFERROR関数でもエラーを表示させないようできましたが、
IF関数を使わなくてもいいのでは?と思われる方も多いので、

最初に書きましたように、IF関数とIFERROR関数の違いに関して、ご質問が多い訳です。

では、次の場所でIF関数とIFERROR関数を比べてみましょう。