#N/A・#REF!・合計が合わない|スプレッドシートの関数エラー、よくある原因3つと直し方

記事
ビジネス・マーケティング
ネットショップの在庫表や売上表で、ある日突然「#N/A」が並んだり、合計が手で数えた数と合わなくなったり。
関数のエラーは、原因の「型」を知っていると、たいてい数分で直せます。

この記事では、よくある3つのパターンを、架空の在庫表の例でご紹介します。

■ 1. #N/A:探している値が「見つからない」

VLOOKUP(XLOOKUP)で商品コードから在庫数を引いてくる表で、よく出るエラーです。

よくある原因
・商品コードの前後に見えない空白が入っている(CSVから貼り付けたときに多い)
・片方が数字、もう片方が文字列になっている(「00123」と「123」など)
・本当にその商品コードが一覧にない

直し方の例
・空白を消す:=VLOOKUP(TRIM(A2), 在庫!A:C, 3, FALSE)
・見つからないときに空欄にする:=IFERROR(VLOOKUP(A2, 在庫!A:C, 3, FALSE), "")

※IFERRORでエラーを隠すのは、原因を確かめてからにします。先に隠すと、本当に登録漏れの商品にも気づけなくなります。

■ 2. #REF!:参照していた場所が「なくなった」

よくある原因
・関数が参照していた列や行を削除した
・別のシートの名前を変えた・シートを消した

直し方の例
・「元に戻す」で削除前に戻せるなら、まず戻す
・戻せない場合は、#REF!になっている部分を正しいセル範囲に書き直す
・列を消す前に、その列を使っている関数がないか確認する習慣をつける

■ 3. 合計が合わない:エラーは出ないのに数字がずれる

いちばん気づきにくいのがこれです。

よくある原因
・合計の範囲が途中で止まっている(行を追加したら範囲の外に出た)
・数字が文字列として入っている(左寄せになっている数字は要注意)
・同じ注文が2回貼り付けられている

直し方の例
・範囲を列全体にする:=SUM(C2:C)(Googleスプレッドシート)
・文字列の数字を数値に直す:=VALUE(C2)、またはデータの形式を「数値」にする
・重複を探す:=COUNTIF(A:A, A2)>1 で、同じ注文番号が2回以上ある行に印をつける

■ まとめ

・#N/A:まず疑うこと:空白・数字と文字列の違い・本当に一覧にない
・#REF!:まず疑うこと:列や行・シートを消していないか
・合計が合わない:まず疑うこと:範囲の終わり・文字列の数字・重複

「原因を探す時間がない」「どこを直せばいいか分からない」という場合は、関数1か所の修正と、なぜエラーになっていたかの説明を3,000円で承っています。
▶ スプレッドシートの関数のエラーを1つ直します

※この記事の例は、説明用に作成した架空の表です。
サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す