@IT会議室は、ITエンジニアに特化した質問・回答コミュニティ「QA@IT」に生まれ変わりました。ぜひご利用ください。
- PR -

VB.net→Excel複数起動

1
投稿者投稿内容
sinh
ベテラン
会議室デビュー日: 2003/01/22
投稿数: 87
投稿日時: 2005-04-14 16:13
お世話になります、sinと申します。

現在、

Windows 2000 Server SP4
OfficeXP SP2
Microsoft.NET Framework 1.1 SP1

の環境で、VB.netからExcelマクロ(Workbook_Open())を呼び出しExcel帳票を
作成する処理を作成しています。
--- VBのコード -------------------------------------------------

Dim macroFullPath As String = "Excelマクロのパス"
Dim objExcel As Excel.Application = Nothing
Dim objBooks As Excel.Workbooks = Nothing
Dim objBook As Excel.Workbook = Nothing

objExcel = CreateObject("Excel.Application")
objBooks = objExcel.Workbooks
objBook = objBooks.Open(macroFullPath)
objExcel.DisplayAlerts = False

System.Runtime.InteropServices.Marshal.ReleaseComObject(objBook)
objBook = Nothing
System.Runtime.InteropServices.Marshal.ReleaseComObject(objBooks)
objBooks = Nothing
objExcel.Quit()
System.Runtime.InteropServices.Marshal.ReleaseComObject(objExcel)
objExcel = Nothing
GC.Collect()
System.Windows.Forms.Application.DoEvents()
----------------------------------------------------------------

この処理を1つのみ実行する場合は問題なく動作するのですが、
複数実行するとイベントビューア上に
--- イベントビューア内容 --------------------------------

ソース(S): DCOM
イベントID(I): 10010
サーバー {00024500-0000-0000-C000-000000000046} は、
必要なタイムアウト期間内に DCOM に登録しませんでした。
----------------------------------------------------------
と表示されエラーとなります。

エラー情報を元にネット上で検索をかけたのですが
有力な情報を得ることができませんでした。

このエラーを回避する方法があれば、お願いします。



1

スキルアップ/キャリアアップ(JOB@IT)