Excelの主要エラー6種【症状→原因→解決の早見表】
Excelで計算式を書いたら、セルに #VALUE! や #REF! が出てきて手が止まった経験、ありますよね。
でも安心してください。Excelのエラーは 症状ごとに原因がだいたい決まっています。
💡
#N/A(VLOOKUP系で「値が見つからない」エラー)は別記事で詳しく書いたので、合わせてどうぞ: VLOOKUPで#N/Aが出る5つの原因と解決法
症状
Excelのセルに #VALUE! #REF! #DIV/0! #NAME? #NULL! #N/A のいずれかが表示されている。
即答
Excelのエラー記号は失敗の種類を教えており、記号を見れば原因のカテゴリと解決の方向性が即座に分かる。
なぜ起きるのか
Excelは計算が正常に完了できない場合に、失敗の種類を示す # 記号を返す。記号と失敗の種類が1対1で対応しているため、記号が分かれば原因のカテゴリが絞れる。
確認手順
あなたのケースはどれ? エラー記号から確認手順に進んでください。
- #VALUE! が出ている → 「① #VALUE!の直し方」へ
- #REF! が出ている → 「② #REF!の直し方」へ
- #DIV/0! が出ている → 「③ #DIV/0!の直し方」へ
- #NAME? が出ている → 「④ #NAME?の直し方」へ
- #NULL! が出ている → 「⑤ #NULL!の直し方」へ
- #N/A が出ている → VLOOKUPで#N/Aが出る5つの原因と解決法 へ

まずは早見表(症状→原因→道具)
エラー記号と原因・解決の道具が一目で分かる。この表をブックマークするだけで初動が速くなる。
| エラー | 一言で言うと | よくある原因 | 解決の道具 |
|---|---|---|---|
#VALUE! | 型がおかしい | 数値演算に文字列が入った | VALUE / IFERROR |
#REF! | 参照先が消えた | 行/列を削除した・シート名変更 | 数式を書き直し |
#DIV/0! | ゼロで割った | 分母セルが空・ゼロ | IF で分母チェック |
#NAME? | 名前が認識できない | 関数名のスペルミス・引用符忘れ | 数式バーで該当部分確認 |
#NULL! | 範囲指定がおかしい | カンマ忘れ(スペース区切り) | カンマ , を入れる |
#N/A | 値が見つからない | VLOOKUP系の検索失敗 | 専用記事 |
この表を ブックマークしておくだけ でも、エラーが出たときの初動が大幅に速くなります。
なお、#N/A の例は VLOOKUP系で「見つからない」というケースが代表的です。
① #VALUE! の直し方(型がおかしい)
数値演算に文字列が混ざっている。原因を確認して型を揃えることが解決の基本だ。
症状
計算式が絡む処理で発生し、「いつもと同じ式なのに今日はエラー」というケースが多い。
- 足し算・掛け算など計算式で発生する
- 「いつもと同じ式なのに、なぜか今日はエラー」というケースが多い
主な原因
数値の式に文字列が混ざっている・引数の型が違う・配列関数の誤用の3パターンが主な原因だ。
原因A:数値の式に文字列が混ざっている
=A1+B1 ← A1 が "100円" のような文字列だとエラー
原因B:関数の引数に違う型を渡している
=LEFT(A1, "abc") ← 第2引数は数値であるべき
原因C:配列が必要なのに単一値を渡している
- 一部の配列関数で発生
解決方法
該当セルの値を直す→VALUE関数で変換→IFERRORで応急処置の順で対処する。
方針①:そもそも該当セルの値を直す
セルの値が「100円」のようになっていたら、100 だけにする。これが根本対処。
方針②:VALUE 関数で文字列→数値に変換
=VALUE(A1)+VALUE(B1)
方針③:IFERROR でエラーを別の値に置き換える(応急処置)
=IFERROR(A1+B1, 0)
📌 ポイント: 原因が分からないまま
IFERRORで隠すと、本来計算されるべき値まで0になってしまう可能性があります。まずは原因を特定 → どうしても直せないときの最終手段としてIFERRORを使ってください。なお、セルに
#VALUE!などの#エラーは出ていないのに計算が合わない(数式がそのまま表示されたり、SUMが0になったりする)場合は、文字列扱いの別カテゴリです。数式が計算されない・=SUMがそのまま表示される を確認してください。

② #REF! の直し方(参照先が消えた)
参照していた行・列・シートが削除または移動されたことで、数式の参照先が壊れた状態だ。
症状
昨日まで動いていたのに今日になってエラーが出ている場合、直前に誰かが列や行を削除した可能性が高い。
- 数式の中に
#REF!という文字が直接入っている(例:=SUM(A1:#REF!)) - 「昨日まで動いてたのに今日エラー」の典型
主な原因
参照していた行・列を削除した、シート名を変更した、別ブックへの参照が切れた、の3パターンが主な原因だ。
原因A:参照していた行・列を削除した
VLOOKUPの検索範囲やSUMの集計範囲が含まれる列を削除すると発生。
原因B:シート名を変更した
別シートを参照する数式で、参照先のシート名が変わると発生。
原因C:別ブックへの参照が切れた
[Book1.xlsx] のような参照で、ブックが移動・削除された場合。
解決方法
Ctrl+Zで戻せる間に試し、間に合わなければ数式を正しい参照で書き直す。
方針①:直前の操作を取り消す
Ctrl + Z で削除前の状態に戻せるなら、これが最速。
方針②:数式を書き直す
#REF! の部分を 正しい範囲やシート名に書き直す のが王道。
=SUM(A1:#REF!) ← Before
=SUM(A1:A100) ← After(正しい範囲に修正)
方針③:今後の予防
- 列・行・シートを削除する前に、「この削除で影響を受ける数式はないか」 を確認する習慣をつける
- 数式タブ → 「参照元のトレース」 で依存関係を可視化できる
📌 ポイント:
#REF!は 元の参照先を覚えていない のが厄介。必ず手動で書き直す必要があります。Ctrl+Zで戻せる状態のうちに気づけるかが勝負。

【実務でこれが起きた場面】
複数人で共有している在庫管理Excelで、担当者の一人がデータの整理で「不要な列」と判断した補助列を削除した。その列を参照していた別シートの集計式が一斉に#REF!になったが、削除した本人はその後すぐ上書き保存してファイルを閉じたため、Ctrl+Zで戻すことができない状態になっていた。このケースでは変更前のバックアップファイルがなければ数式を手動で再構築するしかない。「共有Excelで列・行を削除するときは、他のシートから参照されていないか先に確認する」というルールを明文化しておかないと、#REF!の元凶が誰かを特定するのも難しくなる。ExcelのトレースツールはVLOOKUPなど生きている数式なら参照先を可視化できるが、#REF!になった数式では参照先が消えているため有効なトレースは出ない。
③ #DIV/0! の直し方(ゼロで割った)
分母のセルが空かゼロになっている。IFで分母をチェックしてから割り算するのが基本対処だ。
症状
割り算を含む数式か、AVERAGE系関数で対象が空のときに発生する。
- 割り算(
/を含む数式)で発生 - 平均(
AVERAGE)でも、対象が空のときに発生
主な原因
分母のセルが空・ゼロ・集計対象が空の3パターンが主な原因だ。
原因A:分母のセルが空
=A1/B1 ← B1 が空だとエラー
原因B:分母のセルが 0
明示的にゼロが入っているケース。
原因C:AVERAGE 等の集計対象が空
=AVERAGE(A1:A10) ← A1:A10 が全部空だとエラー
解決方法
IFで分母をチェックしてから割るか、IFERRORで包む。データの入力漏れが原因なら入力ルールの見直しが本質的だ。
方針①:分母をチェックしてから割る
=IF(B1=0, "", A1/B1)
ゼロや空のときは空文字を返す形。
方針②:IFERROR で包む
=IFERROR(A1/B1, "")
方針③:データの実態を直す
そもそもなぜ分母が空 or ゼロなのか?を確認する。 入力漏れなら、入力ルールの見直しの方が本質的。
📌 ポイント: 業務で多いのは「月ごとの集計表で、まだデータが入っていない月でエラーが出る」パターン。この場合は方針①か②でOK。データ入力後に正しい結果に切り替わります。

④ #NAME? の直し方(名前が認識できない)
Excelが知らない名前(関数名のスペルミス・クォート忘れ・未定義の名前)が数式に含まれている。
症状
数式の中に不明な単語が混じっている扱いになる。「コピーしてきた式で出た」ケースは関数のバージョン違いを疑う。
- 数式の中に 不明な単語 が混じっている扱いになる
- 「同じ式を友達のExcelからコピーしてきたら出た」というケースもあり
主な原因
関数名のスペルミス・文字列のクォート忘れ・定義名の打ち間違い・バージョン違いの4方向から疑う。
原因A:関数名のスペルミス
=VLOKUP(...) ← VLOOKUP のスペルミス
=AVERAGW(...) ← AVERAGE のスペルミス
原因B:文字列の引用符忘れ
=IF(A1=合格, "OK", "NG") ← "合格" のクォート忘れ
=IF(A1="合格", "OK", "NG") ← 正しい
原因C:定義名(名前範囲)の打ち間違い
名前付き範囲を使っているとき、その名前を打ち間違えるとエラー。
原因D:関数のバージョン違い
新しい関数(XLOOKUP 等)を古いExcelで開いたケース。
解決方法
数式バーで目視確認し、関数名はオートコンプリートで入力する習慣をつける。
方針①:数式バーで該当箇所を目視確認
セルを選択して、上部の 数式バー をじっくり見る。
- 関数名のスペルが正しいか
- 文字列リテラルがクォートで囲まれているか
- カラフルにハイライトされている部分とされていない部分の境目を確認
方針②:関数名はオートコンプリートに任せる
=VL まで打つと候補が出るので、Tab キーで確定。手打ちでスペルを間違えるリスクを減らせます。
方針③:定義名は「数式タブ → 名前の管理」で確認
正しい定義名のスペルが見れます。
📌 ポイント:
#NAME?は 「Excelが知らない名前」 が混じっているサイン。関数名 / 文字列クォート / 定義名 / バージョン、の4方向から疑ってください。
なお SUMIF や COUNTIF で >=100 のような条件式のクォートを忘れても #NAME? が出ます。集計系で出た場合は SUMIF / SUMIFS が動かない原因 や COUNTIF / COUNTIFS が動かない原因 も確認してください。また、セルの #〇〇 エラー値ではなく マクロ(VBA)を実行したときに出るエラー(「実行時エラー '13'」のようなダイアログ)は別カテゴリです。マクロが動かない・VBA実行時エラーの原因と直し方 を参照してください。

⑤ #NULL! の直し方(範囲指定がおかしい)
SUM等の引数でカンマの代わりにスペースを使っていると、「共通部分」演算子として解釈されてエラーになる。
症状
比較的レアなエラーで、範囲を扱う関数で発生する。
- 比較的レアなエラー
- 範囲を扱う関数で発生
主な原因
スペースで範囲を区切っているのが原因。Excelではスペースが「共通部分」演算子になるため、重ならない2範囲を指定すると#NULL!になる。
スペースで範囲を区切っている
Excelでは、スペース は「2つの範囲の共通部分」を意味します。
=SUM(A1:A10 B1:B10) ← スペース区切りは共通部分(この場合は重ならないので #NULL!)
複数範囲を 結合(合計) したいなら、カンマ , で区切ります。
=SUM(A1:A10, B1:B10) ← カンマ区切りで両範囲を合計
解決方法
範囲の区切りをスペースからカンマに直すだけで解決する。
範囲の区切りをカンマに直すだけ。
=SUM(A1:A10,B1:B10)
📌 ポイント:
#NULL!は他のエラーに比べると遭遇頻度が低いですが、スペース区切り=共通部分 という仕様は知っておくと安心です。

番外:エラーをまとめて非表示にしたいとき
エラーを隠す前に原因を把握しておくことが重要。IFERRORは全エラー対応、IFNAは#N/Aのみ対応だ。
IFERROR(全エラー対応)
すべての # エラーを第2引数の値に置き換える。原因が分からないままの隠ぺいには使わないこと。
=IFERROR(A1/B1, "")
すべてのエラー(#N/A, #VALUE!, #REF!, #DIV/0!, #NAME?, #NULL!, #NUM!)に対応。
エラーが出たら第2引数の値(上記なら空文字)に置き換えます。
IFNA(#N/Aだけ対応)
#N/A だけを隠せる。他のエラーは握りつぶさないため、VLOOKUP系には IFERROR より安全だ。
=IFNA(VLOOKUP(...), "")
#N/A のみに対応。VLOOKUP・XLOOKUP系で「見つからない」場合だけ非表示にしたいときに便利。
他のエラーは握りつぶさない ので、本来の問題を見逃しにくい。
⚠️
IFNAは Excel 2013 以降 で使用できます。それより古いバージョン(Excel 2010/2007など)では関数自体が存在せず#NAME?になるので、配布先の環境を確認してください。
⚠️ ただし、エラーを非表示にしても 根本原因が消えるわけではありません。 「本当はマッチすべきデータがマッチしてない」状態を見逃すリスクがあるので、原因究明を諦める前の最終手段にしてください。
IFERRORの3つの落とし穴とIFNAとの詳しい使い分けは別記事で解説しています: IFERROR の使い方と落とし穴【エラーを隠す前に読む完全ガイド】
まとめ:エラー対応チェックリスト
エラー記号→最初に疑うこと→最初に試す解決法の対応が分かれば、ほとんどのエラーを短時間で解消できる。
| エラー | 最初に疑うこと | 最初に試す解決法 |
|---|---|---|
#VALUE! | 型のミスマッチ | 該当セルの値を確認 |
#REF! | 直前の削除操作 | Ctrl+Z か数式書き直し |
#DIV/0! | 分母が空・ゼロ | IF で分母チェック |
#NAME? | スペルミス | 数式バーで目視 |
#NULL! | スペース区切り | カンマに直す |
#N/A | 検索値の不一致 | 専用記事へ |
この順番で疑えば、ほぼ全てのエラーが解決できます。
無料ダウンロード・登録不要のメールだけ
Excelの「詰まりどころ」早見表を1枚に。
COUNTIF・SUMIF・#N/A・エラー6種の《症状→原因→即対応》をA4一枚に凝縮。印刷して手元に。
次に読む
Excelが重い・遅い・応答なしになる原因と対処【症状別に切り分け】
Excelを開くのに時間がかかる、スクロールがカクつく、保存が終わらない、応答なしで固まる…そんな重さの原因は「ファイル肥大/計算過負荷/描画過負荷」の3系統。使用範囲肥大・条件付き書式の重複・揮発性関数・画像埋め込み・.xls形式などを症状別に切り分けて、初心者でもできる対処法を1つずつ順に紹介します。
XLOOKUPへの乗り換えガイド+動かない・#NAME?・#SPILL!の直し方【VLOOKUPの上位互換】
XLOOKUPはVLOOKUPの上位互換。既定で完全一致・左方向も検索可・列番号指定不要・見つからない時のメッセージまで1本で書ける。乗り換え方と、#NAME?(バージョン非対応)・#SPILL!(書き出し先が空いていない)が出た時の直し方を、症状別に確認手順で解説します。
Excelマクロのはじめかた|「そもそも何?」から最初の一歩までを5分で
Excelマクロって結局なに? VBAと同じ? 何が自動化できるの? ──触ったことが無い人向けに、マクロの正体・自動化できる身近な例・コードを書かずに始める2つの方法(AIに頼む/操作を録る)まで、最低限の安心ごとと一緒に5分で案内します。