web-dev-qa-db-ja.com

HRESULTからの例外:System.Runtime.InteropServices.COMExceptionの0x8002000B(DISP_E_BADINDEX)

データを(データベースから)Excelにエクスポートしようとするコードの一部があります。このタスクを実行しようとすると、次のエラーが生成されます。

System.Runtime.InteropServices.COMException occurred
Additional information: Invalid index. (Exception from HRESULT: 0x8002000B (DISP_E_BADINDEX))

このエラーを生成しているコード:

string ExcelFileName = RootFolder + "\\" + "Work_Sheet.xls";
File.Copy(RootFolder + "\\" + "WorksOrder_Template.xls", ExcelFileName);
Excel.Workbook xlWorkBook;
xlWorkBook = excelApp.Workbooks.Open(ExcelFileName, 0, false, Type.Missing, Type.Missing, Type.Missing, true, Type.Missing, Type.Missing, Type.Missing, true, Type.Missing, false, true, Type.Missing);
Excel.Worksheet Page2;
Excel.Worksheet Page3;
Page2 = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item("Sheet2");
Page3 = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item("Sheet3");

上のコード行:

Page3 = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item("Sheet3");

上記のエラーを生成しています。この問題を解決する方法はありますか?

12
Somdip Dey

WorksOrder_Template.xlsファイルから「Sheet3」が欠落していたため、コードが「Sheet3」をフェッチしようとしたときにエラーが生成されました。

10
Somdip Dey