Set 変数名= 何でSetを付けるのか

参照だから

普通の変数。変数のアドレス(位置)に実体もある。
Dim  AA   As  Long
この時点で変数AAは、Longのサイズで整数(小数点が無い)を入れるメモリが決まる。
AA = 123
AAは、すでに存在(実体がある)するのですぐに整数値を入れることができる。
なお、Visual Basic言語では、丁寧に書くとLetを使う。
Let AA = 123

Dim  BB  As  Excel.Application
この時点では、変数BBは、Excel.Appliction(Excel.exeいわゆるExcel本体)を参照するメモリを用意する。
Set BB = New   Excel.Application
このNewまたは、CreateObject(“Excel.Application”)
Set BB =   CreateObject(“Excel.Application”)
で、Excel本体の実体ができる。BB変数は、そのExcelの実体を参照するための変数。だからSet。

なお、Newを使う場合は、参照設定を先をする必要がある。一方、CreateObject関数は、参照設定しなくても使えるためいろいろなバージョンのExcelを動かすことができる。

宣言時に実体を作ることもできる。
Dim  BB  As  New Excel.Application
この書き方は、いつ実体ができたかわかりにくいが1行で書ける。ただし、参照設定をする必要がある。いろいろなパソコン上で動かす場合は、この宣言は使えない。

 

(Visited 3 times, 1 visits today)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です