08-26-2011, 06:51 PM
08-26-2011, 07:04 PM
08-29-2011, 01:54 PM
ありがとうございました。
08-30-2011, 03:57 PM
Ver.8にて、ActiveXに関する変更もされていて、Curl内にExcelを表示できるようになっています。
Ver.8に関する新機能内容が以下に纏められていますので確認してみると良いと思います。
http://developers.curlap.com/re-referenc...55-v8.html
Ver.8に関する新機能内容が以下に纏められていますので確認してみると良いと思います。
http://developers.curlap.com/re-referenc...55-v8.html
03-08-2013, 07:59 PM
ご提示されているサンプルにあるように、
Curl で、ActiveXObject を使って Excel の値を取得する処理などを使うときには、
必ず最後に、Quit をコールしないと、プロセスにEXCEL が残ってしまうのですね。
なぜかCurlアプレットを落としても、ActiveXObject.destroy-object しても、
同じエクセルファイルを開こうとすると、「・・・は既に開いています。2重に開くと、・・・」と表示され、困っていました。
また、利用した Book についても、必ず Close する必要があるのですね。
参照しただけなら、閉じる際に上書きのメッセージを表示させないように、Close メソッドにfalse を渡せばよいようです。
なお、ActiveX でのメモリ管理と関係があるのかはわかりませんが、
大量のセルを読み込むような場合は、処理のたびにガベージコレクトを発生させるとパフォーマンスがよくなりますね。
即座にActiveXオブジェクトが削除されるからかもしれません。
Excel との連携はいろいろな利用方法があると思うので、Excelマクロに詳しくなくてもコーディングができるように、
インタフェースがわかる、ラッパークラスが提供されるとうれしいです。
generate-tlb-code.xcurl でExcelのラッパークラスが生成できるとうれしいのですが・・・。
Curl で、ActiveXObject を使って Excel の値を取得する処理などを使うときには、
必ず最後に、Quit をコールしないと、プロセスにEXCEL が残ってしまうのですね。
なぜかCurlアプレットを落としても、ActiveXObject.destroy-object しても、
同じエクセルファイルを開こうとすると、「・・・は既に開いています。2重に開くと、・・・」と表示され、困っていました。
また、利用した Book についても、必ず Close する必要があるのですね。
参照しただけなら、閉じる際に上書きのメッセージを表示させないように、Close メソッドにfalse を渡せばよいようです。
なお、ActiveX でのメモリ管理と関係があるのかはわかりませんが、
大量のセルを読み込むような場合は、処理のたびにガベージコレクトを発生させるとパフォーマンスがよくなりますね。
即座にActiveXオブジェクトが削除されるからかもしれません。
Excel との連携はいろいろな利用方法があると思うので、Excelマクロに詳しくなくてもコーディングができるように、
インタフェースがわかる、ラッパークラスが提供されるとうれしいです。
generate-tlb-code.xcurl でExcelのラッパークラスが生成できるとうれしいのですが・・・。