MENU
カテゴリー

エクセルの#REF!エラーとは?原因と解決方法を解説

目次

はじめに

エクセルを日常業務で使っていると、セルに「#REF!」というエラーが表示されて、焦った経験はありませんか?

#REF!エラーは、エクセルのエラーのなかでも特に「なぜ起きたのか」が分かりにくいエラーのひとつです。
しかし、原因さえ理解すれば、対処法はシンプルです。

この記事では、#REF!エラーの意味・発生原因・具体的な解決方法を見ていきましょう!

#REF!エラーとは?

そもそも、#REF!エラーとはなんでしょうか?実は、「REF」は「Reference(参照)」の略です。
日本語にすると「参照エラー」となります。

エクセルの数式は、他のセルのデータを参照して計算を行います。
たとえば =A1+B1 という数式は、A1とB1のセルを参照しています。

#REF!エラーとは、数式が参照しているセルが「存在しない状態」になったときに表示されるエラーです。

わかりやすく言うと、「数式が参照しようとした先のセルが、すでになくなっている(または無効な場所を指している)」という状態です。

#REF!エラーが発生する主な原因

#REF!エラーが発生する主な原因としては、以下のものが考えられます。

1. 参照しているセルや行・列を削除した

こちらは最もよくある原因です。

たとえば、C1セルに =A1+B1 という数式が入っているとします。
この状態でA列を削除すると、数式が参照していたA1セルが消えてしまいます。
エクセルは「参照先がなくなった」と判断し、#REF! を表示します。

発生例:

操作前操作後(A列を削除)
C1:=A1+B1 → 結果:10C1:=#REF!+B1 → エラー

行の削除でも同じことが起きます。数式が参照している行を丸ごと削除すると #REF! が発生します。

2. 数式のコピー&ペーストで参照先がズレる

エクセルでは数式をコピーすると、参照先のセルが自動的にズレる「相対参照」という仕組みが働きます。
この仕組みが原因で、コピー先でシートの範囲外を参照してしまうことがあります。

発生例:

A1セルに =A2-A1 という数式が入っているとします。
この数式を上にコピーしようとすると、参照先が「A1」と「A0」になります。
しかしエクセルに「A0」という行は存在しないため、#REF!エラーが発生します。

3. INDIRECT関数などで無効なセル参照を指定

INDIRECT関数(文字列でセル番地を指定する関数)を使っている場合、
参照先の文字列が不正だと #REF! になります。

たとえば、=INDIRECT("Z9999") のように存在しないセルを文字列で指定した場合に発生します。

#REF!エラーの見つけ方

ひとつのセルに #REF! が出ている場合はすぐに気づけますが、大きな表では気づかないことがあります。

そこで、Ctrl + F(検索)で #REF! と入力して検索すると、
シート全体のエラー箇所を一括で見つけることができます。

また、エラーのあるセルを選択すると、数式バーに現在の数式が表示されます。
#REF! と表示されている部分が、参照が壊れている箇所です。

#REF!エラーの解決方法

それでは、どのようにして#REF!エラーを解消することができるでしょうか?以下は主な解決策です。

1. Ctrl + Z で元に戻す

削除操作の直後に気づいた場合は、Ctrl + Z(元に戻す)を押すのが最速の解決策です。
削除前の状態に戻るため、数式も正常に復元されます。
ただし、操作を複数回行った後では使えない場合があります。

2. 数式を正しいセル参照に書き直す

削除を元に戻せない場合や、コピー&ペーストのズレが原因の場合は、数式を手動で修正します。

エラーのあるセルをクリックし、数式バーを確認します。
#REF! と書かれている部分を、正しいセル番地(例:A1)に書き直してEnterを押せばエラーが解消されます。

修正例:

修正前:=#REF!+B1
修正後:=A1+B1

3. 絶対参照($マーク)を使って数式を固定する

コピー&ペーストによるズレが原因の場合は、数式に「絶対参照」を使うことで再発を防げます。

セル番地の列・行の前に $ をつけると、コピーしても参照先が変わらなくなります。
固定した値を参照する数式には、最初から $ をつけておく習慣をつけましょう。

種類記述例コピー時の挙動
相対参照=A1コピー先に応じてズレる
絶対参照=$A$1どこにコピーしてもA1を参照
複合参照=$A1 or =A$1列または行だけを固定

4. IFERROR関数でエラーを非表示にする

すぐに根本原因を直せない場合の応急処置として、IFERROR関数 でエラー表示を隠す方法があります。

=IFERROR(元の数式, エラー時に表示する値)

例:

=IFERROR(A1/B1, "-")

エラーが発生した場合に「-」と表示されるようになります。
ただし、これはあくまで表示を隠しているだけであり、根本的な原因は解決していません。
後で必ず数式を見直すようにしましょう。

まとめ

今回は、#REF!エラーの意味・発生原因・具体的な解決方法を見ていきました。整理すると、以下のようになります。

項目内容
意味数式の参照先セルが存在しない・無効になっている
主な原因参照セルの削除、コピー時のズレ、無効な参照指定
基本の解決策Ctrl+Z で戻す、または数式を正しく書き直す など

#REF!エラーは、原因がわかれば怖くありません。
まずは「参照先がなくなっていないか」を確認することが解決への第一歩です。

\ ノーコード×業務アプリ作成ならプラスApps /

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次