c#在excel文件中获取行会引发TargetInvocationException

时间:2017-01-13 19:40:37

标签: c# wpf excel

我正在制作一个程序来管理公司的不同项目,我的想法是你把一些信息写入excel文件中。

excel文件是名称(“FINANZAS - ”)+当前年份

这个想法是它使用DateTime检测当前年份,如果该年份的excel文件不存在则创建它。这是我的代码:

MyApp = new Excel.Application();
        MyApp.Visible = false;
        if (!File.Exists("FINANZAS - " + DateTime.Now.Year.ToString() + ".xlsx")) { File.Copy(rutaPlantilla, "FINANZAS ARAINCO - " + DateTime.Now.Year.ToString() + ".xlsx"); }

        MyBook = MyApp.Workbooks.Open(@"C:\Users\Sebastian\Documents\Visual Studio 2015\Projects\Finanzas ARAINCO\Finanzas ARAINCO\bin\Debug\FINANZAS ARAINCO - " + DateTime.Now.Year.ToString() + ".xlsx");
        MySheet = (Excel.Worksheet)MyBook.Sheets[1];
        lastRow = MySheet.Cells.SpecialCells(Excel.XlCellType.xlCellTypeLastCell).Row + 1;

当我尝试用其他年份更改日期来测试它时出现了问题,我尝试将其切换到2018进行测试,但它在最后一行抛出了一个TargetInvocationException(具有讽刺意味的是,我用它来检测最后一行)排在excel上)

我不知道这是否是由代码的excel部分引起的,或者是否与手动将日期更改为2018有关

0 个答案:

没有答案