Googleスプレッドシートでデータを取り込む際に、突然「#REF!」と表示されて困った経験はありませんか。このエラーは、数式が参照しているセル範囲が無効になったときに発生します。シートや行を削除した、別ファイルの参照先が変わったなど、原因はいくつかあります。この記事では、#REF!エラーの発生原因と具体的な修正手順をわかりやすく解説します。初心者の方でもすぐに対処できるようになります。
データ取り込みにIMPORTRANGEやQUERYを使う場面で頻発する#REF!エラー。正しく対処すれば、数分で解決できます。範囲指定のミスを見つけるポイントもあわせて紹介します。
【要点】#REF!エラーの対処法
- 数式バーで参照範囲を確認: エラーセルを選択し、数式内のシート名やセル範囲が正しいか確認します。
- 参照先のシート・ファイルの存在確認: 削除されたシートや移動したファイルがないか確認し、必要に応じて再指定します。
- IMPORTRANGEの権限許可: 別ファイルを参照する場合、初回は権限許可が必要です。許可するとエラーが解消されます。
ADVERTISEMENT
目次
なぜ#REF!エラーが発生するのか
#REF!エラーは、数式が参照しているセルや範囲が存在しなくなったときに表示されます。具体的には以下のようなケースで発生します。参照先のシートやファイルが削除された、参照範囲の行や列が削除された、IMPORTRANGEで指定した範囲が無効になった、循環参照が発生したなどです。このエラーは計算結果が得られないため、早急に修正する必要があります。特にデータ取り込みで使うIMPORTRANGE関数では、参照先の変更や権限の問題が原因になりやすいです。
#REF!エラーを修正する具体的な手順
- エラーセルを選択して数式を確認する
エラーが表示されているセルをクリックします。数式バーに表示された数式を確認し、どこを参照しているか把握します。シート名やセル範囲が正しいかどうかをチェックします。 - 参照先のシートやファイルが存在するか確認する
数式に「’シート名’!A1:C10」のようにシート名が含まれている場合、そのシートがまだ存在するか確認します。シートが削除されていれば、新しいシート名に変更します。別ファイルを参照している場合は、ファイルが移動または削除されていないか確認します。 - 参照範囲を再指定する
範囲が無効になっている場合、正しい範囲に修正します。行や列を削除した影響で範囲がずれたときは、数式の範囲を手動で修正するか、もう一度範囲選択し直します。例えば、=SUM(A1:A10) でA5行を削除すると =SUM(A1:A9) になりますが、さらに末尾まで含める場合はA列全体 =SUM(A:A) に変更するのも手です。 - IMPORTRANGEの権限を許可する
IMPORTRANGEで別ファイルを参照している場合、初回は権限許可が必要です。エラーセルにカーソルを合わせると「アクセスを許可」ボタンが表示されるのでクリックします。許可後、自動的にデータが読み込まれ、#REF!エラーが消えます。許可してもエラーが消えない場合は、参照先の範囲が正しいか再確認します。 - 循環参照がないか確認する
自分の数式が自分自身のセルを参照している循環参照も#REF!エラーの原因です。メニューの「拡張機能」→「スクリプトエディタ」から手動で確認するか、循環参照がある場合はエラーメッセージに「循環参照が検出されました」と表示されます。数式内の参照が自己参照になっていないか見直します。
#REF!エラーが起きやすい注意点と関連トラブル
シート名にスペースや特殊文字が含まれる場合
シート名にスペースや記号が含まれると、数式ではシート名をシングルクォーテーションで囲む必要があります。例えば、’売上データ’!A1のようにします。クォーテーションを忘れると#REF!エラーが発生します。シート名を変更したときも数式内のシート名を更新しなければなりません。シート名を変更した後は、必ず数式を確認してください。
別ファイル参照時の権限トラブル
IMPORTRANGEで別のGoogleスプレッドシートを参照する場合、初回は権限を許可する必要があります。許可を求められたら「アクセスを許可」をクリックします。許可した後も#REF!エラーが表示される場合は、参照先のファイルが削除されていないか、URLが正しいかを確認します。また、参照先のファイルが共有設定でアクセス制限されていると、エラーになることがあります。
行や列を削除したときのエラー
数式が特定の行や列を参照しているときに、その行や列を削除すると#REF!エラーになります。例えば、=A1 という数式で1行目を削除すると、数式は =#REF! になります。削除前に数式が影響を受けないように、参照範囲を動的にするか、削除後は素早く修正します。参照が1セルのみの場合は特に注意が必要です。
コピー&ペースト時の相対参照の問題
数式をコピーして別のセルに貼り付けると、相対参照が自動調整されます。その結果、参照先が存在しないセルを指して#REF!エラーになることがあります。例えば、=A1 をコピーして2つ右のセルに貼ると =C1 になりますが、C1が存在するとは限りません。絶対参照($A$1)を使って固定するか、コピー後に参照範囲を確認します。
ADVERTISEMENT
代表的な#REF!エラーの原因比較
| 原因 | 発生状況 | 対処法 |
|---|---|---|
| 参照シートの削除 | 数式内のシート名が削除されたシートを指している | 新しいシート名に修正するか、シートを復元する |
| 参照範囲の行・列削除 | 指定していた行や列を削除した直後に発生 | 範囲を手動で再設定するか、削除前に範囲を調整する |
| IMPORTRANGE権限未許可 | 別ファイルを初めて参照するとき、権限を許可していない | 「アクセスを許可」ボタンをクリックする |
| 循環参照 | 数式が自分自身を直接または間接的に参照する | 数式内の自己参照部分を削除する |
上記の表を参考に、自分の状況に合った原因を特定してください。どの原因でも、まずは数式バーで参照先を確認する習慣が大切です。
まとめ
この記事では、Googleスプレッドシートでデータ取り込み中に発生する#REF!エラーの原因と修正手順を解説しました。参照範囲の再設定、IMPORTRANGEの権限許可、循環参照のチェックなどの方法を覚えておけば、エラーに慌てることはありません。エラーが起きたら、まず数式バーを確認し、参照先が正しいかを確かめてください。今後の作業に役立てるために、この対処法をぜひ実践してみてください。
ADVERTISEMENT
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Googleスプレッドシートの人気記事ランキング
- 【Googleスプレッドシート】GOOGLEFINANCE関数で株価・為替を取得!リアルタイムデータの呼び出し
- 【Googleスプレッドシート】印刷範囲を指定して印刷!特定範囲だけPDFや紙に出す手順
- 【Googleスプレッドシート】新しいスプレッドシートを作成する3つの方法!ドライブ・URL・テンプレート
- 【Googleスプレッドシート】数値の連続データを自動入力!オートフィルの活用
- 【Googleスプレッドシート】ダークモードを有効にする!目に優しい配色への切替
- 【Googleスプレッドシート】株価APIで株式データを自動取得!GOOGLEFINANCE超え活用
- 【Googleスプレッドシート】共有相手が編集できない時のチェック!権限と許可状態の確認
- 【Googleスプレッドシート】ページ設定で用紙サイズと向きを調整!印刷レイアウトの基本
- 【Googleスプレッドシート】Excelファイルxlsxをインポートする手順!ドラッグ&ドロップで取り込み
- 【Googleスプレッドシート】条件付き書式をコピーする!書式のみペーストの活用
