Googleスプレッドシートで=SUM(budget_total)のような名前付き範囲を使うと、表の場所が変わっても式を読みやすくできます。ただし名前が削除された、参照先が変わった、別ファイルで定義されていない場合、式が期待どおりに動かなくなることがあります。まず、名前付き範囲が現ファイルに存在しているかを確認します。

名前付き範囲とA1参照を区別する

A1参照の例は=SUM(B2:B10)、名前付き範囲の例は=SUM(budget_total)です。後者のbudget_totalは、シート上の単なる見出し文字列ではなく、そのスプレッドシートに登録した範囲名である必要があります。

確認するには[データ]→[名前付き範囲]を開き、右側に同じ名前の定義があるか探します。名前は英字・数字・アンダースコアで指定でき、数字で始めることやA1のようなセル参照と衝突する名前は避ける必要があります。

範囲の削除・シート移動を点検する

範囲名が存在する場合、その参照先が期待しているシートとセルを指しているかを確認します。たとえば元は売上!B2:B10だったのに、表を移動してB2:B30が必要になったケースです。

ここで重要なのは、名前付き範囲が存在することと、指定先が正しいことは別だという点です。既存の式を書き換える前に、該当範囲のセル数・見出し・サンプル値を確認してください。

名前を削除すると、その名前を参照する数式は動作しなくなるとGoogle公式にも明記されています。不要に見える名前でも、先にその名前を参照する式が残っていないか探しましょう。

参照先を再指定して式を検証する

  1. 必要ならファイルを複製します。
  2. [データ]→[名前付き範囲]で対象の編集アイコンを開きます。
  3. 名前を保持したまま、正しいセル範囲を選んで[完了]します。
  4. 該当する数式の計算結果を、直接範囲を指定した確認用の式と比較します。

例えば次の2つを別セルに置きます。

=SUM(budget_total)
=SUM('売上'!B2:B30)

両者が同じ対象を合計すべきなら一致するか確認します。範囲を修正すると、その名前を共有する別の数式にも影響します。合計だけでなく、その名前を使っているグラフや入力規則なども影響範囲を確認してください。

別ファイルへコピーするときの注意

シートの内容や数式だけを別のスプレッドシートへコピーした場合は、必要な名前付き範囲の定義が移動先に存在するかを別途確認してください。コピー操作の種類によって結果が異なるため、「名前が必ず複製される」とは断定しません。

移行先で同じ範囲名を再定義するときは、移行先の行数・列位置に合う参照を割り当て、代表的な合計値で検算します。名前を再登録してエラーが消えただけでは正しい集計と判定しないことが大切です。

参考資料

おすすめの記事