FileSystemObjectは解放すべきかどうなのか今までよく判らなかったんですが、解放した方がいいですね。
コードの中で一度や二度使って終了するなら解放しなくていいと思いますが、ループで繰り返し使う場合はプログラムが途中で止まってしまったりします。
私の場合はフォルダにあるファイルを1件ずつ検索し、ファイル名のリストと合致していたらある処理をする・・・という関数を、合計2000回くらいループで実行させてたんですが、プログラムの実行が終わっているのにwindowsのお待ちください状態が止まらない現象にあいました。
原因は関数の中でcreateしたFSOを初期化しなかったからだと思います。
Sub Hogehoge Dim FSO As Object Set FSO = CreateObject("Scripting.FileSystemObject") (処理) Set FSO = Nothing End Subこんな感じで解放するとよいと思われます。
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。