タイトル : Re: Excel ComObjectの解放 投稿日 : 2014/10/28(Tue) 21:23 投稿者 : 魔界の仮面弁士
> 何を解放し忘れているのでしょうか? 念のため、ReleaseComObject の戻り値を確認してみて下さい。 それらすべてが 0 を返していますか? もしも 1 以上を返してくるケースがあった場合は、そのオブジェクトに対して 複数の参照カウントが生成されていますので、0 になるまで ReleaseComObject を 繰り返すか、もしくは、FinalReleaseObject で処理することになります。 (なお、0 未満の値を返してきている場合は 過解放です) > xlSheet_g = DirectCast(xlSheets("グラフ"), Excel.Worksheet) この xlSheets に関する解説が無いようですが、xlSheets が原因というわけではないのですね? > xlChart = DirectCast(xlCharts(0), Excel.ChartObject) これは xlChart = DirectCast(xlCharts.Item(1), Excel.ChartObject) だとどうでしょう。 参照設定しているライブラリによっては、ChartObjects に既定のインデクサが無い場合があるためです。 また、Excel のコレクションオブジェクトは、基本的には 1 からカウントするはず…。 |