今回はスプレッドシートのエラー表示の修正方法についてご紹介させて頂きます。
せっかく一生懸命作成した表にエラーが表示されるのはあまり気分の良いものではありませんが、修正方法さえしっかり理解しておけば簡単に対処できるものがほとんどです。
それでは早速ご紹介させて頂きます。
#DIV/0!
原因
表を作成していると、表示されやすいエラーが「#DIV/0!」です。
「#DIV/0!」エラーは、数式が0で割ろうとしているときや、空白の状態で割ろうとしている時に表示されるエラーです。
実際の例で見てみましょう。
Fにある販売達成率を見てください。
販売達成率は簡単な数式「販売数/販売予定数」を計算して「%」で表示させています。
赤い矢印の先にあるセルに、「#DIV/0!」エラーが表示されています。
これは、10月12日の販売予定数が「0」になっていることが原因となっています。
修正方法
セル内にエラー表示がされたままでは見栄えもよくありませんし、後で集計したりグラフを作成する時に問題が発生する可能性もありますので、修正する必要があります。
まず最初に根本的な原因を考えると、この日だけ「販売予定数」が「0」になっているのは、単なる入力ミスなのか、または休日だったのか、それともこの日は理由があって売れないと考えていたのかのどれかになると思います。
販売予定数に何かしらの数値を入力することが出来れば問題は解決しますが、「0」が正しい場合も考えられます。
そのような場合は、「IFERROR 関数」を使って問題を解決するようにしましょう。
「=IFERROR(E13/D13,”休日”)」と入力すると「#DIV/0!」の代わりに、「休日」と表示されました。
ここでは、エラーの出たセルのみ「IFERROR 関数」を挿入してみましたが、販売達成率が表示されている「F列」すべてに「IFERROR 関数」を指定しても問題ありません。
「IFERROR 関数」は、最初の計算式でエラーが出なければ、計算結果を返し、エラーがあれば「””」で囲まれた引数を返します。
「IFERROR 関数」の詳しい使い方は以下の記事をご参照ください。
#ERROR!
原因
「#ERROR!」は、区切り文字である「,(カンマ)」を挿入し忘れた時に発生するエラーです。
使用頻度の多い、SUM関数やCOUNT関数で表示されることが多いエラーです。
実際の例を見てみます。
左側の表に、10月のジャケットとシャツの販売数が入力されています。
これらの合計販売数を赤い枠線の中のセルに、SUM関数を使って計算します。
「=SUM(D28:D37 E28:E37)」と一見正しそうな数式を入力していますが、「#ERROR!」が表示されています。
もちろんここでの原因は、「,(カンマ)」の入力忘れです。
修正方法
修正方法は簡単です。
「=SUM(D28:D37, E28:E37)」と「D28:D37」と「E28:E37」の間に「,(カンマ)」を入力すれば、正しい計算結果が返されます。
#N/A
原因
「#N/A」エラーは、計算式のデータがシート上で見つからない場合に表示されるエラーです。
言葉では少し分かりにくいので、例を見ていきましょう。
表では、ジャケットとシャツの販売額を集計しています。
集計には「VLOOKUP関数」を使用しています。
数式は、「=VLOOKUP(G33,G28:H29,2,0)」となっています。
ジャケットの販売金額は「140000」と正しく表示されていますが、ジャンバーの販売額のところに「#N/A」エラーが表示されています。
原因はすでにお気づきだと思いますが、「ジャンバー」自体が存在していないことによるものです。
「VLOOKUP関数」についてよく分からない方は以下の記事をご参照ください。
修正方法
修正方法は簡単です。
「G33」のジャンバーをシャツに変更して、シャツの合計販売枚数である、「E39」を掛ければ正しい計算結果、「81000」が表示されます。
「=VLOOKUP(G33,G28:H29,2,0)*E39」
#NAME?
原因
「#NAME?」エラーは名前のとおり、数式の名前が間違っている時に表示されます。
例を見てみましょう。
表では先程と同じようにシャツの販売金額を集計しています。
セルには「VLOOKUP関数」を使って、「=VLOOOKUP(G34,G28:H29,2,0)*E39」と入力しています。
一見正しそうな数式ですが、どこかが間違っています。
「#NAME?」エラーは数式の名前が間違っている時に表示されるエラーですから、数式名に間違いがあります。
「VLOOKUP」と入力すべきところが、「VLOOOKUP」と「O」が一つ余計に入力されています。
修正はここを直せば良いということがすぐに分かると思います。
修正方法
正しい数式「=VLOOKUP(G34,G28:H29,2,0)*E39」と入力すれば、販売金額の「81000」が返されます。
「#NAME?」エラーはエラーの原因が見つけやすいので、表示されたときは速やかに訂正するようにしましょう。
#NUM!
原因
「#NUM!」エラーは、指定通りに計算式が実行出来ない時に表示されるエラーです。
例を見てみましょう。
表では納品予定日と実際の納品日から遅延日数を計算しています。
関数は「DATEDIF関数」を使用しています。
数式は、「=DATEDIF(L7,M7,”D”)」と入力しています。
数式は正しいセルを選択して、正しい単位(D)を入力しているので間違いはありません。
では一体どこに間違いがあるのでしょうか?
「#NUM!」エラーは計算式が実行出来ない時に表示されるエラーです。
ここでは、「L7」から「M7」の日数が計算できないためにエラー表示となっています。
つまり、「DATEDIF関数」はパラメータ2が(ここではM7)がパラメータ1(ここではL7)より同日かその後の日付でないと計算することが出来ないために、エラーが表示されているのです。
(納品日が9ヶ月も前なのはおかしいですよね)
修正方法
ここでは数式を訂正するのではなく、「M7」のセルの日付を訂正しました。
「2022/01/01」と入力されていたものを、「2022/10/01」に変更しています。
これで正しい遅延日数、「1」が結果として返されるようになりました。
#VALUE!
原因
「#VALUE!」エラーは、数式やセルに問題があるときに表示されるエラーです。
何が問題であるかが分かりにくいエラーですので、「#VALUE!」エラーが表示されたらしっかりと原因を突き詰めるように注意しましょう。
早速例を見てみましょう。
先ほどと同じ表で、遅延日数を計算します。
計算式は、「=DATEDIF(L2,M2,”D”)」と入力しています。
計算式に問題はないようです。
指定したセルの中身を見ていきましょう。
日付も納品日が予定日より後になっていますので、計算が出来ないということはありません。
でもここで少しおかしなことに気が付かれると思います。
納品日の日付が、「202210月01日」と漢字を使って入力しています。
パラメータの値は数値にする必要があるので、エラーが表示される原因はここにあるということが分かると思います。
修正方法
「M2」の日付を「2022/10/01」と数値に入力し直して計算を実行しました。
遅延日数は正しい計算結果「9」が返されました。
#REF!
原因
「#REF!」エラーは、参照していたセルが削除されて、計算が出来なくなったときに表示されます。
例を見てみましょう。
表では、「B45」から「B51」までのセルを一つ一つ足した結果が「B52」に表示されています。
ここでは、「17」が計算結果となっています。
ここで、「51行目」を削除してみます。
すると、数式を入力した「B52 」が「B51 」の場所に移動したために、数式内の「B51」だった場所が計算式になってしまうために、「#REF!」が表示されています。
ちょっと言葉では説明が分かりにくいと思いますので、実際に操作してみてください。
修正方法
修正方法は意外とオーソドックスになります。
数式の「#REF!」を削除すれば、合計の計算結果は返されます。
行を削除する前の状態に戻すには、再度行を追加してセルに数値を入力して、計算式を書き直す必要があります。
まとめ
いかがでしたか。
出来れば見たくないエラーですが、必ず原因があるので対処はしやすいと思います。
また、Googleスプレッドシートでは、エラーが表示されているセルを選択すると、エラーに関する詳細がポップアップとして表示されますので、解決しやすいと思います。
エラーを完全に防ぐことは難しいですが、少しでも減らすためのポイントは以下になります。
- 表が複雑にならないように注意する
- 属性名(列の名前)を分かりやすいものにする
- ヘッダーを固定する
たったこれだけのことですが、意外とミスを減らすのに効果がありますので、ぜひ意識しながら表を作成してみてください。
今回の記事がエラーが表示されたときの対処の参考になれば幸いです。
最後までお読み頂きありがとうございました。
コメント