HOME > 数式 > 名前の有効範囲−ブックレベル、シートレベル

 名前の有効範囲−ブックレベル、シートレベル

シート内からのみ参照可能な名前を「シートレベルの名前」といい、
ブック全体から参照可能な名前を「ブックレベルの名前」という。

エクセル 2007 名前の有効範囲−ブックレベル、シートレベル
1

まずは、「シートレベルの名前」と「ブックレベルの名前」を作ってみる。

「Sheet1」シートのセルA1に対し、「bookLevel」という名前を、ブックレベルで定義する。
「Sheet1」シートのセルA1を選択する。

エクセル 2007 名前の有効範囲−ブックレベル、シートレベル
2

リボンの《数式》タブ->《定義された名前》グループ->《名前の定義》ボタンを押す。

エクセル 2007 名前の有効範囲−ブックレベル、シートレベル
3

《新しい名前》ダイアログボックスが出てくる。《名前》に「bookLevel」と入力する。

《範囲》が「ブック」であることを確認し、《参照範囲》が「=Sheet1!$A$1」になっていることを確認できたら、OKボタンを押す。

これで、「ブックレベルの名前」の「bookLevel」ができた。

エクセル 2007 名前の有効範囲−ブックレベル、シートレベル
4

「Sheet1」シートのセルA2に対し、「sheetLevel」という名前を、シートレベルで定義する。

「Sheet1」シートのセルA2を選択する。

エクセル 2007 名前の有効範囲−ブックレベル、シートレベル
5

リボンの《数式》タブ->《定義された名前》グループ->《名前の定義》ボタンを押す。

エクセル 2007 名前の有効範囲−ブックレベル、シートレベル
6

《新しい名前》ダイアログボックスが出てくる。《名前》に「sheetLevel」と入力する。

《範囲》を「Sheet1」と設定し、《参照範囲》が「=Sheet1!$A$2」になっていることを確認できたら、OKボタンを押す。

これで、「シートレベルの名前」の「sheetLevel」ができた。

エクセル 2007 名前の有効範囲−ブックレベル、シートレベル
7

「名前」がどのように定義されているかを確かめるため、リボンの《数式》タブ->《定義された名前》グループ->《名前の管理》ボタンを押す。

エクセル 2007 名前の有効範囲−ブックレベル、シートレベル
8

《名前の管理》ダイアログボックスが出てくる。《範囲》列には、名前が「どのレベルで定義されたか」が書いてある。

「ブック」と書いてあれば「ブックレベルの名前」、シート名が書いてあれば「シートレベル」であって、その名前が「有効」なシート名が表示されている。

左図の場合、「Sheet1」シートで「sheetLevel」という名前が有効であることを示している。

エクセル 2007 名前の有効範囲−ブックレベル、シートレベル
9

これらの名前が、使用可能かどうか検証してみる。

「ブックレベルの名前」である「bookLevel」を使ってみる。「Sheet1」シートのセルB1に「=bookLevel」と入力する。

エクセル 2007 名前の有効範囲−ブックレベル、シートレベル
10

入力を確定すると、セルA1と同じ内容が表示された。

「ブックレベルの名前」である「bookLevel」は、「Sheet1」シートでは有効である。

エクセル 2007 名前の有効範囲−ブックレベル、シートレベル
11

「シートレベルの名前」である「sheetLevel」を使ってみる。

「Sheet1」シートのセルB2に「=sheetLevel」と入力する。

エクセル 2007 名前の有効範囲−ブックレベル、シートレベル
12

入力を確定すると、セルB1と同じ内容が表示された。「シートレベルの名前」である「sheetLevel」は、「Sheet1」シートでは有効である。

エクセル 2007 名前の有効範囲−ブックレベル、シートレベル
13

次に「Sheet2」シートで同じことをしてみる。

セルB1は「=bookLevel」、セルB2には「=sheetLevel」と入力する。
左図はその結果であるが、シートレベルの名前は「#NAME?」エラーが起きてしまった。「エクセルには"sheetLevel"という名前はわからない」ということである。

つまり、「シートレベルの名前」は「その名前が定義されたシート内でのみ」有効であり、「ブックレベルの名前」は「どのシートからも」有効である、ということである。