プロが教える店舗&オフィスのセキュリティ対策術

VBAでコレクションの要素を一括削除する方法として、下記のコードが掲載されていましたが
Nothingを代入しないままNewを使用しても問題ないでしょうか。
また、この辺りの挙動について詳しく書かれているサイトがありましたら、ご教示頂ければ幸いです。

Dim fruits As Collection

Set fruits = New Collection
With fruits
Call .Add("バナナ")
Call .Add("リンゴ")
Call .Add("ミカン")
End With
Set fruits = New Collection

A 回答 (1件)

VBAのメモリ解放は『ガベージコレクション』任せなので、メモリリークの心配はナイです。


基本的に、Nothingの代入は必要ありませんよ。

・ガベージコレクション@wikipedia
http://ja.wikipedia.org/wiki/%E3%82%AC%E3%83%99% …
・VBのオブジェクト解放@MSDN
http://msdn.microsoft.com/ja-jp/library/cc440884 …

C言語とかやるなら、"とにかく解放する"癖つけとくのも良いですが。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

VBAにもガベージコレクションのような機能があったのですね。

お礼日時:2014/04/10 10:35

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