Exception de HRESULT: 0x8002000B (DISP_E_BADINDEX) pour le Système.Moment de l'exécution.InteropServices.COMException

J'ai une partie de code qui tente d'exporter des données (base de données) d'Excel. Quand je suis en train d'effectuer cette tâche, il est à l'origine de cette erreur:

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

Code qui génère cette erreur:

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");

La ligne de code sur :

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

est la génération de l'erreur susmentionnée. Une idée de comment résoudre ce problème?

...est-il réellement un "Feuil3" dans le fichier Excel?
oui. J'ai aussi travaillé. Car il y avait une migration dans les rapports du programme (WorksOrder_Template.xls), le "Feuil3" était manquant dans le fichier de rapport, malheureusement. Après l'ajout de la Feuil3 à ce fichier, le programme a commencé à travailler correctement.
J'ai haussé à votre question.... Ne sais pas qui a marqué en bas comme c'est un gros problème et personne NE semble être en mesure de donner une explication claire de ce qui va mal... je suis également recevoir ce message d'erreur lorsque vous essayez de créer des relations, mais je peux le faire manuellement, mais pas dans le code... Même si j'ai une autre méthode qui PEUT ajouter de relations, pas de problème, j'ai copié ce code, modifié et maintenant il ne fonctionne pas...

OriginalL'auteur Somdip Dey | 2015-03-03