投稿日 | : 2003/02/14(Fri) 09:23 |
投稿者 | : killer |
Eメール | : |
URL | : |
タイトル | : Re: Excelがメモリに残る |
> VBからExcelを起動して、終了させてもExcelがメモリに残っています。
> セルの削除部分をコメントアウトすると、メモリからも消えるのですが、
> セルを削除すると、メモリに残ってます。
> 何が悪いんでしょうか?
> 宜しくお願い致します。
>
> VB6Pro sp5 + Excel2000 Windows2000/NT4
>
> Public xlsApp As Excel.Application
> Public xlsBook As Excel.Workbook
> Public xlsSheet As Excel.Worksheet
>
> 'Excelの起動
> Set xlsApp = CreateObject("Excel.Application")
> Set xlsBook = xlsApp.Workbooks.Open(App.Path & "\test.xls")
> Set xlsSheet = xlsBook.Worksheets(1)
>
> '----ここから
> Rows("9:19").Select
> Selection.ClearContents
> Range("A1").Select
> '----ここまでをコメントアウトするときちんと終了する
>
> 'Excelの保存と終了
> xlsBook.Save
> xlsApp.Quit
> DoEvents
>
> 'Excelの開放
> Set xlsSheet = Nothing
> Set xlsBook = Nothing
> Set xlsApp = Nothing
上記のコードを実行してもメモリに残らなかったけどなぁー・・・
ただオイラなら下記のようにコードは書くかな?
素人さんのコードはなんでエクセルのオブジェクトを3つも使ってるの?
1つで十分なような気するけど・・・
Dim objXLS As Object
Set objXLS = CreateObject("Excel.application")
objXLS.Application.Workbooks.Open (App.Path & "\test.xls")
objXLS.Worksheets(1).Select
objXLS.Application.Rows("9:19").Select
objXLS.Application.Selection.ClearContents
objXLS.Application.Range("A1").Select
objXLS.Save
objXLS.Quit
Set objXLS = Nothing