以下のコードはプロシージャが終了すると、宣言したオブジェクト変数を破棄するマクロである。
空欄に入る適切な語句を解答しなさい。
Sub Exam1()
Dim A As Range
Set A = Range(“A1”)
A.offset(0, 1) = 300
Set A=【 ① 】
End Sub
正解
【 ① 】nothing
解説
VBAではプロシージャが終了すると、プロシージャ内で宣言した変数は通常破棄されます。
オブジェクト変数も同じように破棄されますが、何かの拍子破棄されないと、変数がメモリ上に残ります。
そのような事態にならないよう明示的に変数にNothingを代入し破棄します。
構文:Set 変数=Nothing
【コード解説】
Sub Exam1()
Dim A As Range
Set A = Range(“A1”)
…オブジェクト変数を宣言し、変数に代入する。
A.offset(0, 1) = 300
Set A=Nothing
…宣言したオブジェクト変数を破棄する。
End Sub
スポンサーリンク
スポンサーリンク