タイトル : Re^7: Cells.FindNextのループ中の解放 投稿日 : 2009/09/16(Wed) 22:13 投稿者 : camputer
魔界の仮面弁士 様 どうもありがとうございました!! あの後,下のようにコードを書き換えせさていただきました. 念のため,myRngとmyFindNextが偶然解放されていないかどうかをテストしてみたかったので これらを多用するサブルーチンをLoopの中で呼び出してみましたが, きれいに解放出来ているようです.本当にどうもありがとうございます!! If Not myRng Is Nothing Then Dim 最初セル As String = myRng.Address Do 'ここで300行程度のサブルーチンを呼び出してみましたが, '問題なさそうでございます Dim myFindNext As Excel.Range = xlCells.FindNext(myRng) MRComObject(myRng) myRng = myFindNext If myRng Is Nothing Then Exit Do Loop Until myRng.Address = 最初セル End If 数時間前まで(魔界の仮面弁士様からアドバイスいただく前)の私には, 上のコードでは「myFindNextが解放されていない」ように見えて 仕方がありませんでした^^; 長い間,オブジェクトは変数単位で解放する必要があるものだと...orz アドバイスいただけましたおかげで,また理解が深まりましたし, ようやくコードの続きを考えて楽しむことができます. 関連して勉強することも増えてよかったです. いつも言葉でしかお礼をさせていただく事しかできませんが, 沢山のアドバイスをいただき,本当にどうもありがとうございます!! 今後もどうぞよろしくお願いいたします. Camputer. |