【发布时间】:2018-11-13 09:40:54
【问题描述】:
简单的代码,我认为它应该杀死 Excel。但是任务管理器说这会留下一个 Excel 实例运行。我错过了什么?谢谢。
using Microsoft.Office.Interop.Excel;
//Stuff...
// Launch dialog picker that return path to Excel file, in string
// called excelTemplate
Microsoft.Office.Interop.Excel.Application xlTemp = new Microsoft.Office.Interop.Excel.Application();
Workbook workbook = xlTemp.Workbooks.Open(excelTemplate);
xlTemp.DisplayAlerts = false;
// Poke through individual sheets, get some info from them
workbook.Close();
xlTemp.Quit();
【问题讨论】:
-
在我看来,通过工作表进行的搜索可能会将其留在与打开时不同的工作表上,但 DisplayAlerts = false 会抑制“你想保存”框......所以我尝试添加对象 misValue = System.Reflection.Missing.Value;并指定 workbook.Close(false, misValue, misValue);这没有帮助。
-
Excel Interop 旨在让开发人员讨厌他们的生活。我建议检查 EPPlus。您无需运行打开的 Excel 实例即可打开电子表格并阅读它。您甚至不需要安装 Excel。您只需像打开文档一样打开它并阅读您想要的内容。 github.com/JanKallman/EPPlus
标签: c# excel-interop