尝试关闭电子表格时,Excel会询问用户是否保存更改

Cox*_*oxy 9 c# excel epplus

我们使用EPPlus为Excel电子表格生成一堆报告.

通常代码如下:

var workbookFile = new FileInfo(reportFile);
using (var excel = new ExcelPackage(workbookFile))
{
    var wb = excel.Workbook;
    var ws = wb.GetCleanWorksheet("Report");
    ws.Select();

    // write data to sheet
    ws.Cells[1, 1].Value = "foo";

    excel.Save();
}
Run Code Online (Sandbox Code Playgroud)

当用户打开电子表格时,一切看起来都很好.当他们尝试关闭电子表格而未进行任何更改时,Excel会询问他们是否要保存更改.这不是什么大不了的事,但它令人烦恼并且有点担心.

我在OpenXML SDK Productivity Tool中打开了电子表格,然后通过验证.

小智 6

以下是对Microsoft支持部门在http://support.microsoft.com/kb/213428上回答的类似问题的回答 "要在不保存任何更改的情况下强制关闭工作簿,请在该工作簿的Visual Basic模块中键入以下代码:

Sub Auto_Close()

ThisWorkbook.Saved = True

结束子

由于Saved属性设置为True,因此Excel会像保存工作簿一样进行响应,并且自上次保存以来未发生任何更改.

希望有所帮助.