【Excel】名前付き範囲が別シートで使えない!Excelの「スコープ」設定を修正する手順

【Excel】名前付き範囲が別シートで使えない!Excelの「スコープ」設定を修正する手順
🛡️ 超解決

Excelで定義した名前付き範囲が、別のシートから参照できないという問題に直面していませんか。これは、名前付き範囲の「スコープ」設定が原因であることがほとんどです。スコープとは、名前付き範囲がどの範囲で有効になるかを定義するものです。この設定を理解し、適切に修正することで、名前付き範囲を意図した通りに利用できるようになります。

本記事では、Excelの名前付き範囲が別シートで参照できない原因と、その解決策であるスコープ設定の修正方法を解説します。この記事を読めば、名前付き範囲のスコープ設定を正しく理解し、シートを跨いだ参照問題を解決できるようになります。

ADVERTISEMENT

名前付き範囲のスコープ設定とは

Excelにおける名前付き範囲は、セルやセル範囲に名前を付ける機能です。これにより、数式での参照が分かりやすくなり、管理も容易になります。しかし、この名前付き範囲には「スコープ」という重要な設定があります。スコープは、その名前付き範囲がExcelブック全体で有効になるか、特定のシート内でのみ有効になるかを決定します。

スコープが「ワークシート」に設定されている場合、その名前付き範囲はそのシート内でのみ有効です。他のシートからは参照できません。一方、「ブック」に設定されている場合は、Excelブック全体で有効となり、どのシートからでも参照可能になります。このスコープ設定の理解が、名前付き範囲を正しく使うための鍵となります。

お探しの解決策が見つからない場合は、こちらの「Excelトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

名前付き範囲が別シートで使えない根本原因

名前付き範囲が別シートで利用できない主な原因は、その名前付き範囲のスコープが「ワークシート」に設定されていることです。名前付き範囲を定義する際、Excelはデフォルトで「ワークシート」スコープを選択する場合があります。特に、名前付き範囲を定義したシートと同じシート内でしか利用しないと想定される場合に、この設定がなされることがあります。

しかし、後になって別のシートからその名前付き範囲を参照しようとすると、Excelは「その名前は認識できません」といったエラーを返します。これは、名前付き範囲が定義されたシートの「ローカルスコープ」でしか有効になっていないためです。ブック全体で利用したい名前付き範囲は、「ブック」スコープに明示的に設定する必要があります。

名前付き範囲のスコープを「ブック」に変更する手順

名前付き範囲が別シートで使えない問題を解決するには、その名前付き範囲のスコープを「ブック」に変更する必要があります。以下の手順で設定を変更できます。

  1. 「数式」タブを開く
    Excelのリボンメニューから「数式」タブをクリックします。
  2. 「名前マネージャー」を開く
    「数式」タブの中にある「名前マネージャー」ボタンをクリックします。これにより、「名前マネージャー」ダイアログボックスが表示されます。
  3. 対象の名前付き範囲を選択する
    「名前マネージャー」ダイアログボックスで、スコープを変更したい名前付き範囲を一覧から探してクリックし、選択します。
  4. 「スコープ」を変更する
    選択した名前付き範囲の情報が表示されている部分の「スコープ」という項目を確認します。現在「ワークシート」と表示されているはずです。この「スコープ」の右側にあるドロップダウン矢印をクリックします。
  5. 「ブック」を選択する
    ドロップダウンメニューから「ブック」を選択します。これにより、名前付き範囲のスコープがブック全体に拡張されます。
  6. 「閉じる」をクリックする
    設定が完了したら、「名前マネージャー」ダイアログボックスの「閉じる」ボタンをクリックしてダイアログを閉じます。

これで、スコープを「ブック」に変更した名前付き範囲は、Excelブック内のどのシートからでも参照できるようになります。数式バーに名前付き範囲の名前を入力した際に、候補として表示されるようになります。

ADVERTISEMENT

別シートで名前付き範囲を参照する数式

スコープを「ブック」に変更した名前付き範囲は、どのシートからでも直接参照できます。例えば、「売上合計」という名前付き範囲をブックスコープで定義した場合、別のシートのセルに以下の数式を入力することで、その売上合計の値を取得できます。

=売上合計

もし、同じ名前が複数のシートで定義されている場合は、Excelはブックレベルの名前を優先します。ただし、意図しない挙動を避けるため、ブックレベルの名前とワークシートレベルの名前で同じ名前を使用しないことが推奨されます。もし、ブックレベルの名前とシートレベルの名前で同じ名前が存在し、シートレベルの名前を参照したい場合は、シート名を付けて「シート名!名前」のように指定する必要があります。例えば、「Sheet1」というシートに「売上合計」という名前(シートスコープ)がある場合、別のシートから参照するには「=Sheet1!売上合計」と記述します。

名前付き範囲のスコープ設定に関する注意点

名前付き範囲のスコープ設定を変更する際には、いくつかの注意点があります。これらの点に留意することで、予期せぬ問題を避けることができます。

同じ名前がブックとシートに重複している場合

もし、ブック全体で有効な名前付き範囲と、特定のシート内でのみ有効な名前付き範囲で、全く同じ名前を定義しようとした場合、Excelはエラーを表示します。また、すでにブックスコープで定義されている名前と同じ名前をシートスコープで定義しようとした場合も同様です。この場合、どちらかの名前を変更する必要があります。

後からブックスコープに変更した名前が、既存のシートスコープの名前と重複する場合、Excelはブックスコープの名前を優先します。しかし、これは混乱を招く可能性があるため、名前の重複は避けるべきです。名前を付ける際は、ユニークで分かりやすい名前を心がけましょう。

名前付き範囲の定義を削除した場合

名前付き範囲のスコープ設定を変更する前に、もしその名前付き範囲が不要になった場合は、削除することを検討してください。名前マネージャーから削除することで、Excelブックが軽くなる可能性があります。ただし、その名前付き範囲が数式で使用されている場合、削除すると数式でエラーが発生するため注意が必要です。

スコープを「ブック」に変更した名前付き範囲を後で削除したい場合も、同様に名前マネージャーから操作します。削除する前に、その名前がどこで使用されているかを確認しておくと、トラブルを防ぐことができます。名前マネージャーでは、使用されている場所を特定する機能はありませんが、数式で使用されている場合は、Excelがエラーを通知してくれます。

Excelのバージョンによる違い

名前付き範囲のスコープ設定機能は、Excelの比較的新しいバージョンで利用可能です。Excel 2013以降では、この機能は標準で搭載されています。しかし、Excel 2010以前のバージョンでは、スコープ設定の概念が異なったり、一部機能が制限されたりする場合があります。

特に古いバージョンのExcelを使用している場合、名前付き範囲のスコープ設定が意図通りに動作しない可能性があります。もし、古いバージョンで名前付き範囲をシートを跨いで利用したい場合は、VBA(Visual Basic for Applications)を使用して名前付き範囲を管理する方法も検討する必要があります。ただし、Excel for Microsoft 365では、このスコープ設定は非常に直感的かつ容易に扱えます。

名前付き範囲とセル参照の比較

名前付き範囲を理解するために、通常のセル参照と比較してみましょう。名前付き範囲を使用するメリットと、通常のセル参照の特性について解説します。

項目 名前付き範囲(ブックスコープ) 通常のセル参照(例: A1)
参照の分かりやすさ 高い
数式が「=売上合計」のように意味のある名前になる
低い
数式が「=Sheet1!A1」のようにセル番地になる
管理の容易さ 高い
名前マネージャーで一元管理できる
低い
セル番地を直接変更する必要がある
シートを跨いだ参照 可能
ブックスコープであればどのシートからでも参照できる
可能
シート名を指定すればどのシートからでも参照できる
変更時の影響 限定的
名前を変更すれば、関連する数式も自動的に更新される
広範囲
セル番地を変更すると、関連する数式も手動で修正が必要になる場合がある
設定の手間 やや手間がかかる
初回定義時に名前とスコープを設定する必要がある
不要
セルを直接選択または入力するだけ

名前付き範囲は、特に複雑なワークブックや、多くの数式が含まれる場合に、その威力を発揮します。数式の可読性を高め、メンテナンスを容易にするための強力なツールと言えます。スコープ設定を適切に行うことで、その利便性を最大限に引き出すことが可能です。

まとめ

本記事では、Excelで名前付き範囲が別シートで参照できない問題の原因と、その解決策であるスコープ設定の変更方法について解説しました。名前付き範囲のスコープが「ワークシート」になっていることが原因で、他のシートから参照できない場合が多いです。この問題を解決するには、「数式」タブの「名前マネージャー」から、対象の名前付き範囲のスコープを「ブック」に変更します。

スコープを「ブック」に設定することで、Excelブック内のどのシートからでも名前付き範囲を直接参照できるようになり、数式の可読性と管理性が向上します。名前の重複や、Excelのバージョンによる違いにも注意しながら、名前付き範囲のスコープ設定を適切に管理しましょう。この設定をマスターすることで、より効率的で分かりやすいExcelワークブックを作成できるようになります。

📊
Excelトラブル完全解決データベースこの記事以外にも、様々なエラー解決策をまとめています。困った時の逆引きに活用してください。

ADVERTISEMENT

この記事の監修者
📈

超解決 Excel・Word研究班

企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。

🏆
超解決 Excel検定 あなたのExcel実務能力を3分で測定!【1級・2級・3級】