原因がどうしてもわからず質問させていただきます。
シートのあるセルの名前定義をしているのですが、その名前定義している部分でこまっています。
名前定義は確実にしてあるのですが
ActiveWorkbook.Names("名前定義名称").RefersToRange.Address
で取得すると結果は得られます。
しかし、
ActiveWorkbook.Worksheets("シート名称").Names("名前定義名称").RefersToRange.Address
とすると取得ができません。
よく見ると、結果が得られるほうのNamesプロパティにはCountが0ではないですが、ActiveSheetで見るとCountが0になっているんのです。
どうしてこうなってしまうのかわからず、お分かりになられる方がいましたら教えていほしいです。
No.2
- 回答日時:
メニューの「挿入」-「名前」-「定義」
名前の定義の参照範囲を見て貰えば解ると思いますが、必ずシート名が入っています
例えば
Book名が"abc.xls"の、シート名が"Sheet1"のセル"A1:B5"に"あいう"と言う名前を定義した時、それぞれを実行してみると
ActiveWorkbook.Names("あいう").RefersToRange.Address
の場合は
ActiveWorkbook="abc.xls"
Names("あいう")="Sheet1!A1:B5"
RefersToRange.Address=Namesで定義されてい名称の参照先をAddressで返す
即ち、"abc.xls"の"Sheet1!A1:B5"のAddressを返す
で、"A1:B5"が帰ってきます
ActiveWorkbook.Worksheets("Sheet1").Names("あいう").RefersToRange.Address
の場合は
"abc.xls"の"Sheet1"の"Sheet1!A1:B5"のAddressを返すに
なってしまいエラーとなります
こんな説明で解るかな?
No.1ベストアンサー
- 回答日時:
名前定義には2種類ありますよ
Book全体で定義する場合と各シートで定義する場合
Excelのメニューの 挿入 > 名前 > 定義 を実行した場合は
Book全体で使う名前 つまり WorkbookオブジェクトのNamesコレクションに登録されます
VBAコードで
ActiveSheet.Names.Add などで追加すると シートにおいてのみ有効な名前の定義が出来ます
Sub Test()
ActiveSheet.Names.Add "BBB", "=$B1:$B10"
End Sub
などを実行したあとで 挿入 > 名前 > 定義 を実行して見ましょう
BBBがリストアップされていてその右側に『Sheet1』などのシート名があると思います
単純に他のセルを選択して 挿入 > 名前 > 定義 > 名前の入力 > OK を実行した際には リストアップされた名前に右側には何も無いと思います
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) pythonのWebスクレイピングでfind_allだとurlがNoneに 4 2022/04/17 18:21
- Visual Basic(VBA) エクセルのマクロコードの一部分を変更する方法について教えてください。 2 2023/02/17 08:40
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- Excel(エクセル) ExcelデータをWebページに保存した場合の名前定義 1 2023/08/01 15:38
- 日本語 <代名詞><指示詞>という誤り 4 2022/04/01 11:06
- Visual Basic(VBA) シートをコピーする下記記述でダイアログを用いた記述がわかりません?( A = Dir(ThisWor 4 2022/08/22 12:26
- Excel(エクセル) エクセルで名前の定義で使える文字 3 2022/08/24 09:46
- Visual Basic(VBA) 前回ご教授いただいたコードに覚えたてのループ処理で品名りんごAから順に20回for nextでループ 7 2023/01/13 22:01
- その他(職業・資格) 設置義務資格(必置資格)に関して 2 2022/05/25 17:32
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/02/02 13:13
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
自然数 整数 有理数 実数 加法 ...
-
皆さん定義を教えてください 「...
-
三角関数(たとえばf(x)=sinxと...
-
無限から無限を引いたら何にな...
-
ネットストーカーの定義 最近SN...
-
「logx^2=2logx」が間違って...
-
1未満と1以下の違い
-
ACCESS IIF関数 複数条件の設...
-
ACCESS VBAでインポート定義の場所
-
べき乗
-
定義付けできない言葉について
-
p⇒q=(¬p)∨qについて
-
「互いに素」の定義…「1と2は互...
-
日本語 ことば ひとまわり ふた...
-
e<3の証明を教えてください。
-
集合間演算に関する質問
-
変数の宣言の名称を教えてくだ...
-
負の階乗 (-1/2)! =√π
-
ヘシアンが0の場合どうやって極...
-
複雑な家庭とは
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
皆さん定義を教えてください 「...
-
べき乗
-
無限から無限を引いたら何にな...
-
1未満と1以下の違い
-
p⇒q=(¬p)∨qについて
-
「logx^2=2logx」が間違って...
-
数字の1とは何なのか?
-
「互いに素」の定義…「1と2は互...
-
変数の宣言の名称を教えてくだ...
-
ACCESS VBAでインポート定義の場所
-
日本語 ことば ひとまわり ふた...
-
ACCESS IIF関数 複数条件の設...
-
Excelファイルの「数式」タブ→...
-
e<3の証明を教えてください。
-
なぜ小数は自然数ではないので...
-
ヘシアンが0の場合どうやって極...
-
2進数の符号ビットの入った数...
-
最大元と極大元の定義の違いが...
-
eの0乗は1ってどういう原理です...
-
フーリエ級数展開の初項はなぜa...
おすすめ情報