ブックに属する名前とシートに属する名前(1)

今まで何となく使っていた、Nameプロパティ。いくつか教わったことや、試してみたことを、備忘録として残しておく。

f:id:Infoment:20181006131549p:plain

名前の種類

名前には、属する先が2種類ある。

  1. ブック
  2. シート

f:id:Infoment:20181006122638p:plain

object.Name= で名付けてみる。

例えば、こんな感じで。
そうすると、ブックに属する名前になるようだ。

Sub NameTest()
    Range("A1").Name = "山田太郎"
End Sub

f:id:Infoment:20181006124704p:plain

名前と一緒に、シートをコピーしてみる。

コピーしたシートのA1も「山田太郎」だが、シートに属する名前になるらしい。
f:id:Infoment:20181006125030p:plain

シートに属する名前を上書きしてみる。

A1の「山田太郎」がシートに属する名前の状態で、もう一度マクロで名前を付けてみる。

Sub NameTest()
    Range("A1").Name = "山田太郎"
End Sub

そうすると、A1を選んでも名前が表示されなくなった。
f:id:Infoment:20181006125515p:plain

良く判らない状態になっている。
f:id:Infoment:20181006125626p:plain

危険だから、やめておこう。

ブックに属する名前があるシートを消してみる。

参照先が「=#REF!$A$1」になった。
そうか、よく見かけるこれは、こうやってできるのか。
f:id:Infoment:20181006125908p:plain

ちなみに、ブックに属する名前が無くなったからといって、シートに属する名前が勝手にブック属に昇格することは無いようだ。勝手に変わっても困るし、これは当たり前か。

なかなか興味深く、奥深い。でも、知ってる人には当たり前?

明日に続きます。

参考まで。