Excelでデータと数式を操作する場合、エラーが発生する可能性があります。
エラーを処理するために、Excelには便利な関数であるIFERROR関数が用意されています。
ExcelでIFERROR関数を使用するメカニズムを理解する前に、まず、数式を使用するときに発生する可能性のあるさまざまな種類のエラーを理解しましょう。
内容
Excelのエラーの種類
Excelのエラーを理解すると、考えられる原因とそれらに対処するための最良の方法を特定するのに役立ちます。
Excelで発生する可能性のあるエラーの種類は次のとおりです。
#N / Aエラー
これは「値が利用できません」エラーと呼ばれます。
これは、ルックアップ式を使用していて、値が見つからない(したがって使用できない)場合に表示されます。
以下は、VLOOKUP式を使用してアイテムの価格を検索する例ですが、テーブル配列でアイテムが見つからない場合はエラーが返されます。
#DIV / 0!間違い
数値を0で割ると、このエラーが発生する場合があります。
これは除算エラーと呼ばれます。以下の例では、#DIV / 0が得られます!数量値(式の除数)が0であるため、エラーが発生します。
#値!間違い
数式で誤ったデータ型を使用すると、値エラーが発生します。
たとえば、次の例では、数字と文字Aのセルを追加しようとすると、値エラーが発生します。
これは、数値しか加算できないために発生しますが、テキスト文字で数値を加算してみました。
#REF! 間違い
これは参照エラーと呼ばれ、数式の参照が無効になるとこのエラーが表示されます。これは、数式がセル参照を参照していて、そのセル参照が存在しない場合に発生する可能性があります(数式で参照されている行/列またはシートを削除した場合に発生します)。
以下の例では、元の数式は= A2 / B2ですが、列Bを削除すると、その列へのすべての参照が#REFになります。それはまた#REFを与えました!式の結果としてのエラー。
#NAME?エラー
このエラーは、関数のスペルミスが原因である可能性があります。
たとえば、VLOOKUPの代わりに誤ってVLOKUPを使用すると、名前エラーが発生します。
#NUMエラー
Excelで非常に大きな値を計算しようとすると、エラーが発生する可能性があります。たとえば、 = 187 ^ 549は数値エラーを返します。
NUMエラーが発生する可能性がある別の状況は、無効な数値引数を使用して数式を指定した場合です。たとえば、平方根を計算している場合、それが数値であり、引数として負の数を指定すると、数値エラーが返されます。
たとえば、平方根関数の場合、引数として負の数を指定すると、数値エラーが返されます(以下を参照)。
ここではいくつかの例を示しましたが、Excelでエラーが発生する理由は他にもたくさんあります。Excelでエラーが発生した場合、そのままにしておくことはできません。データがさらに計算で使用される場合は、エラーが正しい方法で処理されることを確認する必要があります。
ExcelのIFERROR関数は、Excelのすべての種類のエラーを処理するための優れた方法です。
ExcelIFERROR関数-概要
IFERROR関数を使用すると、エラーの代わりに数式が返すものを指定できます。数式がエラーを返さない場合は、独自の結果を返します。
IFERROR関数の構文
= IFERROR(value、value_if_error)
入力パラメータ
- 価値 - これは、エラーをチェックするためのパラメーターです。ほとんどの場合、数式またはセル参照のいずれかです。
- エラーの場合の値 –これはエラーが発生したときに返される値です。次のエラータイプが評価されました:#N / A、#REF!、#DIV / 0!、#VALUE!、#NUM!、#NAME ?、および#NULL!。
その他の注意事項:
- value_if_errorパラメーターとして「」を使用すると、エラーが発生したときにセルに何も表示されません。
- valueまたはvalue_if_errorパラメーターが空のセルを参照している場合、ExcelのIFERROR関数はそれを空の文字列値として扱います。
- value引数が配列数式の場合、IFERRORは、valueで指定された範囲内の各項目の結果の配列を返します。
ExcelIFERROR関数-例
以下は、ExcelでIFERROR関数を使用するXNUMXつの例です。
例1-エラーの代わりに空白のセルを返します
エラーを返す可能性のある関数がある場合は、それをIFERROR関数でラップし、エラーが発生したときに返す値として空白を指定できます。
以下に示す例では、D4の結果は#DIV / 0です。エラーを0で除算します。
この場合、次の式を使用して、醜いDIVエラーの代わりに空白を返すことができます。
= IFERROR(A1 / A2、””)
このIFERROR関数は、計算でエラーが発生したかどうかをチェックします。その場合、数式で指定された空白を返すだけです。
ここでは、空白の代わりに表示する他の文字列または数式を指定することもできます。
たとえば、次の数式は、空白のセルの代わりに「エラー」というテキストを返します。
= IFERROR(A1 / A2、 "エラー")
注:Excel 2003以前を使用している場合、そこにはIFERROR関数はありません。この場合、IF関数をISERROR関数と組み合わせて使用する必要があります。
例2-VLOOKUPが値を見つけられない場合、「見つかりません」を返します
Excel VLOOKUP関数を使用する場合、指定した範囲内でルックアップ値が見つからない場合は、#N / Aエラーが返されます。
たとえば、以下は学生の名前とそのスコアのデータセットです。VLOOKUP関数を使用して、2人の生徒(D3、D4、およびDXNUMX)のスコアを取得しました。
上記の例のVLOOKUP式では、最初のXNUMX人の生徒の名前が見つかりましたが、リストにJoshの名前が見つからなかったため、#N / Aエラーが返されました。
ここでは、IFERROR関数を使用して、エラーの代わりに空白または意味のあるテキストを返すことができます。
以下は、エラーの代わりに「見つかりません」を返す式です。
= IFERROR(VLOOKUP(D2、$ A $ 2:$ B $ 12,2,0)、 "見つかりません")
VLOOKUPではIFERRORの代わりにIFNAを使用することもできることに注意してください。IFERRORはすべてのタイプのエラー値を処理しますが、IFNAは#N / Aエラーにのみ適用され、他のエラーには適用されません。
例3-エラー時に0を返す
エラーの場合にIFERRORが返す値を指定しないと、自動的に0が返されます。
たとえば、以下に示すように100を0で割ると、エラーが返されます。
ただし、以下のIFERROR関数を使用すると、0が返されます。最初のパラメータの後にコンマを使用する必要があることに注意してください。
例4-VLOOKUPでネストされたIFERRORを使用する
VLOOKUPを使用する場合、配列のフラグメンテーションテーブルを確認する必要がある場合があります。たとえば、2つの別々のワークシートに販売取引があり、アイテム番号を調べてその値を確認するとします。
そのためには、VLOOKUPでネストされたIFERRORを使用する必要があります。
次のようなデータセットがあるとします。
この場合、Graceのスコアを見つけるには、次のネストされたIFERROR式を使用する必要があります。
=IFERROR(VLOOKUP(G3,$A$2:$B$5,2,0),IFERROR(VLOOKUP(G3,$D$2:$E$5,2,0),"Not Found"))
この数式のネストにより、いずれかのテーブルから値を取得し、返されたエラーを処理できます。
ただし、シートが同じシート上にある場合、実際には別のシート上にある可能性があることに注意してください。