Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ エラー処理 | プロのようにデータを計算する
エクセルアドベンチャー

bookエラー処理

メニューを表示するにはスワイプしてください

#DIV/0!

数式がゼロまたは空白の値で割り算を行っています。すべてのデータが入力される前に平均や比率を計算する際によく発生します。たとえば、単価の計算式で数量列にまだ空白行がある場合などです。

=D9/E9E9 が空白

対処法:不足している値を入力するか、IFERROR でラップしてデータが入力されるまで 0 または「—」を返すようにします。

#VALUE!

数式が数値を期待しているのに、テキストやテキストとして保存された日付、余分なスペースや記号が含まれるセルを見つけた場合に発生します。金額セルに手入力した「$」記号、見えない文字が含まれるインポートデータ、数値列にあるテキストラベルなどが主な原因です。

=D9+E9E9 に「$45」がテキストとして入力されている

対処法:これは数式の問題ではなく、データ品質の問題です。元データをクリーンアップし、数値以外の文字を削除し、セルを数値として再フォーマットしてください。

#REF!

数式で使用されている行または列が削除されました。Excelは、依存していたすべての数式内の参照を #REF! に置き換えます。これは、ワークシートの構造が変更され、既存の数式が壊れたことを示す強いサインです。

=E9 → 列Eが削除された

対処法:削除直後にCtrl+Zを押して元に戻し、参照を復元します。それができない場合は、すべての #REF! を見つけて参照を手動で更新してください。

#N/A

XLOOKUPVLOOKUP、または MATCH で検索値が検索配列に存在しない場合によく表示されるエラー。レポート作成の文脈では、通常、参照テーブルにデータが不足していることを意味し、数式自体が間違っているわけではない。XLOOKUP の if_not_found 引数を使うことで、最も簡潔に対処可能。

=XLOOKUP(B9; I12:I20; J12:J20) → "Gaming" がテーブルに存在しない

対処法: 参照テーブルに不足しているカテゴリを追加するか、if_not_found 引数を利用する: =XLOOKUP(B9; I12:I20; J12:J20; "No budget defined")

#NAME?

関数名のスペルミス、テキスト値の引用符の欠落、または存在しない名前付き範囲への参照が原因で発生するエラー。最も一般的なのは関数名のタイプミスで、Excel はそれを名前付き範囲として解釈し、見つけられない場合に発生する。

=IFF(D9>100;"High";"Low") → "IFF" は関数ではない

対処法: 関数名のスペルを確認し、すべてのテキスト値が二重引用符で囲まれていること、名前付き範囲がワークブック内に存在することを確認する。

#NUM!

数式が許容範囲外の数値を受け取った場合や、数学的に解が存在しない結果を出した場合に発生するエラー。負の数の平方根を求めたり、金融関数に矛盾した入力(例:支払期間数が負の値)を渡した場合などが典型的な原因。#VALUE! とは異なり、データ型自体は正しいが、数値が数式の論理上不正となっている。

=SQRT(-4) → 負の数の平方根

対処法: 数式に入力されている値を確認する。正の値が必要な箇所に負の値、またはゼロ以外が必要な箇所にゼロが入力されている場合が主な原因。

IFERROR

IFERROR は、エラーが発生した場合にゼロ、ダッシュ、メッセージ、または空文字列など、見やすい代替値に置き換えることができる関数。元の数式ロジックを隠すことなく、エラーだけを処理。

重要なポイントは、IFERROR は数式全体をラップするだけで、数式自体を変更しないこと。元の数式はそのまま実行される。IFERROR は、結果がエラーの場合のみその値を補足し、エラーでなければ本来の値をそのまま返す。つまり、問題を隠すのではなく、表示方法を決めている。

=IFERROR(formula; value_if_error)
question mark

検索式:=XLOOKUP(B9; I12:I20; J12:J20) が「Travel」に対して #N/A を返します。これは何を意味しますか?

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 3.  8

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 3.  8
some-alt