[[20060225172300]] 『マクロで名前を定義する』(KI) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『マクロで名前を定義する』(KI)
 マクロ初心者です。データ範囲に名前を付けるマクロを作ろうと思い
 マクロの記録でやった処、下記のように記録されました。

 Sub Macro1()
     Range("A1").Select
     Range(Selection, Selection.End(xlDown)).Select
     ActiveWorkbook.Names.Add Name:="区分", RefersToR1C1:="=Sheet1!R1C1:R786C1"
 End Sub

 そこで、教えて戴きたいのですが、このデータの行範囲の始点はA1ですが
 終点は毎回変化します。従って上記"=Sheet1!R1C1:R786C1"の部分を変化させる
 必要があるのですが、変数に置き換えるにはどのように記述すればよいのでしょうか?
 初心者の質問で申し訳ございませんが、宜しくお願いします。
           

     ActiveWorkbook.Names.Add _
         Name:="区分", _
         RefersTo:="=Sheet1!$A$1:$A$" & Range("A1").End(xlDown).Row
こんな感じでしょうか。
名前定義だけなら範囲をSelectする必要はないです。
Selectしておきたいのなら別ですが。
(みやほりん)(-_∂)b

 to みやほりんさん

 >RefersTo:="=Sheet1!$A$1:$A$" & Sheets("Sheet1").Range("A1").End(xlDown).Row
                                 ~~~~~~~~~~~~~~~~~
 Selectをとってしまうのであれば、ここがあった方が良いと思いますが、不要ですか?
 (chao)

 単純に、
 with sheets("sheet名")
     .range("a1",.range("a1").end(xldown)).name="区分"
 end with

 では?
 (seiya)

 皆様有難うございます。
 何れも使用してみましたが、問題なく実行できました。
 解決です。また初心者な質問をする事があると思いますが
 宜しくお願いします。
                     (KI)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.