C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 10 を表示中)
■1559 / )  Re[5]: COMオブジェクトを使用したEXCEL操作で、HRESULT
□投稿者/ ぴんちはちゃんす (4回)-(2007/02/27(Tue) 16:30:40)
No1550 (Blue さん) に返信
>>エラーの場所が特定できました。
>>
>> // 範囲を獲得
>> long lRowCnt = insData.GetLength(0);
>> long lColCnt = insData.GetLength(1);
>> xlRange = xlWorkSheet.get_Range("A3", Type.Missing);
>> → xlRange = xlRange.get_Resize(lRowCnt, lColCnt);
>>
>>上記の "→" でエラーが発生していました。
> ちなみに、このときのlRowCnt,lColCntはいくつになっていましたか?

466, 5になっています。

> それと、多分この書き方だと、Excelのプロセスが残っちゃうでしょう。
> (xlWorkSheet.get_Range("A3", Type.Missing);で取得したものを上書きしちゃっているので
> ReleaseComObjectできない)

タスクマネージャーを観察してますけど、プロセスは残ってないように思えます。
書き方がまずいんですね。。。

上書きしないように、
xlRangeと同じ定義をしたxlRangeValを宣言して以下のようにしてみました。

xlRange = xlWorkSheet.get_Range("A3", Type.Missing);
xlRangeVal = xlRange.get_Resize(lRowCnt, lColCnt);

しかし、get_Resizeでエラーになります。
そういう問題じゃないんですかね・・・?
返信 編集キー/


管理者用

- Child Tree -