[WriteCell]の処理が【低い確率】で失敗する現象が発生しています。
”クライアントから切断された”と表示されていますが、
何が起きて処理が止まるのか理解できていません。
御教授願います!
<処理内容>
DataTableに保存されているデータをExcelに書き込んでいます。
[WriteCell]の処理が【低い確率】で失敗する現象が発生しています。
”クライアントから切断された”と表示されていますが、
何が起きて処理が止まるのか理解できていません。
御教授願います!
<処理内容>
DataTableに保存されているデータをExcelに書き込んでいます。
Webで調べたところ、Excelマクロでも同じ現象が発生している様ですね。
ただ、根本原因の説明や対処方法の記載が無く、困っております、、、。
@nk_tecroom さん
Excel Macroの質問で↓のような記事を見つけました。(外部リンク)
https://dobon.net/vb/bbs/log3-52/30892.html
ちゃんと理解しているわけではないですが、write 処理をする前にExcel インスタンスが終了してる為かなぁと想像してます。
消極的な対応策としては、以下の案が思いつきます。
これで解決するかどうかは不明ですが、安定性は増すと思います。
共有まで。
以下、パスから引用
エラーコード 0x80010108 (RPC_E_DISCONNECTED) は
『アプリ側では参照を保持しているが、その参照は既に COM オブジェクト側から切断されている』
という状態を意味します。
このエラーになった理由は、先に Workbooks.Close が実施されることで、
全てのブックが閉じられているのに、その後で FileB のブックすなわち
xlBook を操作しようとしたことが原因です。
xlBook 以外の変数を MRComObject してあるかどうかは無関係です。
念のためですが。
WriteCell → WriteRange
とか。
@Jumbo さん
反応が遅くなりまして、すみません。
コメント頂き、ありがとうございます。
Excelへのデータ設定の速度を遅くして、本エラーの発生率は下がりましたが
完全にゼロにはなっていない状況です。
ご紹介頂いたリンクも確認させて頂きます。
@kaishii さん
コメントありがとうございます。
参考にさせて頂きます。
Please refer to the link like below, although is write in Chinese.
Hi @etss1016
I have interest in your answer, the Chinese post says it will be fixed if I change Excel option “excel中的com加载项” but it seems that is just for PDF. Do you know why it works??
Rgds,
J,
@etss1016 さんの中国語のポスト見る限り、Excel オプションから解決策があるそうです。
中国語ですが、キャプチャ見れば想像つくはずなので、試して、結果を共有してもらえるとうれしいです。
(Excel Option >> COM addinからPDF creator com addin 外せば直るという話らしいです。)
もし、PDFに関する以外の他のAddinでエラーを行っている。デフォルト以外のPlugInを全部はずしてやってください。