Исключение из HRESULT: 0x8002000B (DISP E BADINDEX) для системы.Во время выполнения.InteropServices.Исключение comexception

у меня есть часть кода, которая пытается экспортировать данные (из базы данных) в 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");

генерирует вышеупомянутую ошибку. Есть идеи, как решить эту проблему?

1 ответов


"Sheet3" отсутствовал в WorksOrder_Template.xls-файл и, следовательно, когда код попытался получить "Sheet3", он сгенерировал ошибку.