【发布时间】:2020-04-01 10:31:43
【问题描述】:
if (!File.Exists(this.savePath.FullName + "\\" + value + ".xlsx"))
{
using ( ExcelPackage exp = new ExcelPackage(finfo))
{
//ExcelPackage exps= new ExcelPackage(pather);
ExcelWorksheet exlss = exp.Workbook.Worksheets[timing];
exlss.Cells["A1"].LoadFromDataTable(dt, true, TableStyles.Medium9);
exp.SaveAs(existing);
}
}
else if (File.Exists(this.savePath.FullName + "\\" + value + ".xlsx")) {
timing = "2011";
using (ExcelPackage exp = new ExcelPackage(existing))
{
//ExcelPackage exps= new ExcelPackage(pather);
ExcelWorksheet exlss = exp.Workbook.Worksheets[timing];
exlss.Cells["A1"].LoadFromDataTable(dt, true, TableStyles.Medium9);
exp.Save();
}
}
所以我尝试使用 EPPlus 保存到从用户那里获得的特定文件夹。但是,尽管它在第一个使用实例中保存得很好,但当我尝试保存或保存时,它只会抛出错误。
如果我使用原始文件作为模板(如下所示)并再次使用第一部分,它就可以正常工作。我不知道为什么保存不起作用。我试图 saveAs 到不同的位置,但这会导致同样的错误。
如果您有任何想法,请帮助我。
~edit 这是错误 保存文件 C:\Documents and Settings\xxx\Desktop\Testing Andyxxxxxxxx\2481.xlsx 时出错
~edit 抱歉所有的编辑,我是新手 这是一个 InvalidOperationException(未处理)
【问题讨论】:
-
您也可以发布错误吗?
-
保存文件时出错 C:\Documents and Settings***\Desktop\Testing Andy ****\2481.xlsx 抱歉
-
和内部异常?
-
我对 NuGet 的 4.0.5 版本有同样的问题。错误是:保存文件 D:\
.xlsx 时出错,内部消息异常是“对象引用未设置为对象的实例”。并且堆栈跟踪位于 CellsStoreEnumerator`1.Init() at OfficeOpenXml.ExcelStyles.RemoveUnusedStyles() at OfficeOpenXml.ExcelStyles.UpdateXml() at OfficeOpenXml.ExcelWorkbook.Save() at OfficeOpenXml.ExcelPackage.Save()