名前付き範囲は、Microsoft Excelの便利な機能ですが、あまり活用されていない機能です。 名前付き範囲を使用すると、数式の理解(およびデバッグ)が容易になり、複雑なスプレッドシートの作成が簡単になり、マクロが簡単になります。
名前付き範囲は、名前を割り当てる範囲(単一のセルまたはセルの範囲)です。 その後、数式、マクロ、およびグラフやデータ検証のソースを定義するために、通常のセル参照の代わりにその名前を使用できます。
Sheet2!$ C $ 11のような標準セル参照の代わりにTaxRateのような範囲名を使用すると、スプレッドシートを理解しやすくし、デバッグや監査をしやすくなります。
Excelで名前付き範囲を使用する
たとえば、簡単な注文フォームを見てみましょう。 このファイルには、発送方法を選択するためのドロップダウン付きの請求可能な注文フォームと、送料の表を含む2番目のシート、および税率が含まれています。
バージョン1(名前付き範囲なし)は、その数式で通常のA1スタイルのセル参照を使用します(下の数式バーに表示)。
バージョン2は名前付き範囲を使用しているため、式がはるかに理解しやすくなります。 Excelでは関数名を含む名前のリストが表示されるため、名前の範囲を指定すると式の入力が簡単になります。 選択リストの名前をダブルクリックして式に追加します。
[ 式 ]タブから[ 名前マネージャ ]ウィンドウを開くと、範囲名とそれらが参照するセル範囲の一覧が表示されます。
しかし、名前付き範囲には他の利点もあります。 サンプルファイルでは、Sheet1のセルB13のドロップダウン(データ検証)を使って配送方法を選択しています。 選択された方法は、Sheet2の送料を検索するために使用されます。
名前付き範囲がないと、データの検証で別のシートのソースリストを選択できないため、ドロップダウンの選択項目を手動で入力する必要があります。 そのため、すべての選択肢を2回入力する必要があります。1回はドロップダウンリストに入力し、もう一度Sheet2に入力します。 さらに、2つのリストは一致しなければなりません。
いずれかのリストのいずれかのエントリでエラーが発生した場合、誤った選択が選択されたときに送料計算式によって#N / Aエラーが生成されます。 Sheet2のリストにShippingMethodsという名前を付けると、両方の問題が解消されます。
たとえば、ソースフィールドに= ShippingMethodsと入力するだけで、ドロップダウンリストのデータ検証を定義するときに名前付き範囲を参照できます。 これにより、別のシートにある選択肢のリストを使用できます。
ドロップダウンが(配送料計算式の)検索に使用される実際のセルを参照している場合、ドロップダウンの選択項目は常に#N / Aエラーを回避して検索リストと一致します。
Excelで名前付き範囲を作成する
名前付き範囲を作成するには、名前を付けるセルまたはセル範囲を選択してから、 名前ボックス (選択したセルアドレスが通常表示され、数式バーのすぐ左)をクリックして、使用する名前を入力します。を押して、 Enterキーを押します。
Name ManagerウィンドウのNewボタンをクリックして名前付き範囲を作成することもできます。 これにより、新しい名前を入力できる[新しい名前]ウィンドウが開きます。
デフォルトでは、名前を付ける範囲は、Newボタンをクリックしたときに選択された範囲に設定されますが、新しい名前を保存する前または後にその範囲を編集できます。
範囲名にスペースを含めることはできませんが、アンダースコアやピリオドを含めることができます。 一般に、名前は文字で始まり、その後に文字、数字、ピリオド、または下線のみを含めるようにします。
名前では大文字と小文字が区別されませんが、TaxRateやDecember2018Salesなどの大文字の単語の文字列を使用すると、名前を読みやすく認識しやすくなります。 Dog26のように、有効なセル参照を模した範囲名を使用することはできません。
範囲名を編集したり、名前マネージャウィンドウを使用して参照する範囲を変更したりできます。
また、それぞれの名前付き範囲には定義済みの範囲があります。 通常、スコープはデフォルトでWorkbookになります。つまり、範囲名はワークブック内のどこからでも参照できます。 ただし、同じワークブック内で同じ名前の2つ以上の範囲を別々のシートに含めることもできます。
たとえば、1月、2月、3月などの別々のシートを含む販売データファイルがあるとします。各シートにMonthlySalesというセル(名前付き範囲)を含めることができますが、通常、これらの名前のそれぞれのスコープはそれ。
したがって、式= ROUND(MonthlySales、0)は、2月のシートにある場合は2月の売り上げを表し、 3月のシートにある場合は3月の売り上げなどになります。
同じ名前の別々のシートに複数の範囲を持つワークブック、または数十から数百の名前付き範囲を持つ単純な複雑なワークブックでの混乱を避けるために、各範囲名の一部としてシート名を含めると便利です。
これにより、各範囲名が一意になり、すべての名前にWorkbookスコープを含めることができます。 たとえば、January_MonthlySales、February_MonthlySales、Budget_Date、Order_Dateなどです。
名前付き範囲の範囲に関する2つの注意: (1)名前付き範囲の範囲は作成後に編集できません。(2)新しい名前付き範囲の範囲は、[範囲]の[ 新規作成]ボタンを使用して作成する場合にのみ指定できます。 ネームマネージャウィンドウ
名前ボックスに入力して新しい範囲名を作成すると、スコープはデフォルトでWorkbook(同じ名前の範囲が他に存在しない場合)、または名前が作成されているシートのいずれかになります。 したがって、範囲が特定のシートに限定されている新しい名前付き範囲を作成するには、名前マネージャの「新規」ボタンを使用します。
最後に、マクロを書く人にとっては、範囲名を角括弧でくくることによってVBAコードで範囲名を簡単に参照することができます。 たとえば、ThisWorkbook.Sheets(1).Cells(2, 3)の代わりに、その名前がそのセルを参照している場合は、単に[SalesTotal]を使用できます。
Excelワークシートで名前付き範囲を使い始めると、すぐにその利点を理解することができます。 楽しい!