• 締切済み

Excelのシートをコピー

環境は,Visual Studio 2005 Standard Editionです. プログラムを実行後,以下の例外が発生しました. 「HRESULT からの例外: 0x800A03EC」 発生場所は★の位置です. ここから------- Dim xlApp As Microsoft.Office.Interop.Excel.Application = Nothing Dim xlBook As Microsoft.Office.Interop.Excel.Workbook = Nothing Dim xlSheet As Microsoft.Office.Interop.Excel.Worksheet = Nothing xlBook = xlApp.Workbooks.Open("ファイルのパスが入ります") xlSheet = xlBook.Worksheets("シート名が入ります") Dim xlBook2 As Microsoft.Office.Interop.Excel.Workbook = Nothing Dim xlSheet2 As Microsoft.Office.Interop.Excel.Worksheet = Nothing xlBook2 = xlApp.Workbooks.Open("ファイルパスが入ります") xlSheet2 = xlBook.Worksheets("シート名が入ります") 'Excelを表示しない xlApp.Visible = False xlSheet.Copy(Before:=xlSheet2) ★ ここまで-------------- やろうとしているのは,xlSheet2のシートを含むExcelファイルに,xlSheet2の前にxlSheetをコピーする処理です. ★のところで上の例外が発生してしまいます. 以上,よろしくお願いします.

みんなの回答

回答No.2

回答1です。 他に気になったのは、 >xlSheet2 = xlBook.Worksheets("シート名が入ります") です。 xlSheet2 = xlBook2.Worksheets("シート名が入ります") ではありませんか?

oswll
質問者

お礼

cistronezk様 すみません.回答が遅れました. 結果的には,自己解決できました. ソースは離れた場所にあるため,転記できませんが, 方法としては,item(1)のようにシートを作ってから, コピーする方法でした. ありがとうございました.

回答No.1

>Dim xlApp As Microsoft.Office.Interop.Excel.Application = Nothing ・・・ >xlBook = xlApp.Workbooks.Open("ファイルのパスが入ります") とりあえず、xlAppがNothingのまま、というのが目に付きます。

関連するQ&A

専門家に質問してみよう