プロが教えるわが家の防犯対策術!

Excel VBAのプログラム上で

SNDsrcNoC = [N_SrtNO].Column

のように、[]で囲まれている箇所があるのですが、どんな意味なのかわからないでおります。

[]の前に何もないので、配列の添え字や関数の引数でもなさそうです。
ご存知の方どうか教えてください。

VBA []

とかでグーグル検索してもうまいのがでてきません。

A 回答 (3件)

「N_SrtNO」はCtrl+F3「名前の定義」を使ってセル範囲に付けられた名前でしょう。



『Evaluateメソッド』のヘルプを参照してください。
http://msdn.microsoft.com/ja-jp/library/aa191489 …
>メモ Evaluate メソッドの代わりに角かっこを使っても、同じ結果が得られます ([A1:C5] など)。

参照するオブジェクト---今回の事例では名前「N_SrtNO」のセル範囲---を文字列で指定できます。
[N_SrtNO].Column は Evaluate("N_SrtNO").Column
つまり
Range("N_SrtNO").Column です。

関連QA:
http://oshiete.goo.ne.jp/qa/6681089.html?order=asc
    • good
    • 0
この回答へのお礼

ありがとうございます。プログラムが解読できてきました。

お礼日時:2012/01/20 12:15

[ ]はプロジェクト名やプロージャ名を指定するのにも使いますね。


たとえば、MainプロシージャーがSample1とSample2という別々のモジュール内に存在する場合は、

[Sample1].Main
[Sample2].Main

のようにオブジェクトとしてモジュール名を大括弧で囲って指定します。
ただ、[N_SrtNO].Columnというのは、モジュール名を指しているようには思えませんね。。。

ご参考まで。
    • good
    • 0
この回答へのお礼

何通りか使われ方があるようですね。

お礼日時:2012/01/20 12:16

[] はブック名を記載します。


Excel.Workbooks("ファイル名")
みたいなイメージですね。

ちなみに「Excel VBA 大カッコ」とかで検索すれば
ちゃんと出てきますよ。
    • good
    • 0
この回答へのお礼

こちらの使われ方もしていました。ありがとうございます。

お礼日時:2012/01/20 12:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A