タイトル : Re^6: Excelのプロセス 投稿日 : 2007/03/06(Tue) 03:31 投稿者 : 魔界の仮面弁士
> こんな感じでよろしいのでしょうか? まぁ、良いんじゃ無いでしょうか。 あえて修正するとすれば: > objExcel = CreateObject("Excel.Application") 参照設定しているのに、ここでレイトバインドにする意味はあまり無いかと。 objExcel = New Excel.ApplicationClass() で良いんじゃないですかね。 # 可能であれば、Option Strict On モードでチェックしてみましょう。 > objBooks = objExcel.Workbooks() > objRangeA = objWSheet.Cells Workbooks と Cells。どちらもプロパティですが、一方は括弧を付けて、 他方は括弧を付けないという表記の揺れが見られますね。コードを統一しましょう。 ちなみに VB では、「引数の無いプロパティやメソッド」の呼び出し時には、 括弧を付けても付けなくても良い事になってはいるのですが、一般的には他言語に倣って、 メソッド呼び出しに括弧を付け、プロパティ呼び出しには括弧を付けない事が多いようです。 > objExcel.Quit() > System.Runtime.InteropServices.Marshal.ReleaseComObject(objRangeA) 個人的には、最後に一括して解放するのではなく、 objRangeB = objRangeA(1, 1) objRangeB.Value = "TestTestTest" Marshal.ReleaseComObject(objRangeB) などのように、不要になった時点で破棄していく形を取った方が良いのではないかな、と。 |