通过C#打开Excel,然后允许用户手动closuresExcel
我的程序创build一个Excel文件后,我让用户看到该文件。
Excel.Application xlApp = new Excel.Application(); xlApp.Visible = true; Excel.Workbook excelWorkbook = xlApp.Workbooks.Open(xlsx.saveLocation + "\\" + xlsx.fileName, 0, false, 5, "", "", false, Excel.XlPlatform.xlWindows, "", true, false, 0, true, false, false);
每当我closuresExcel窗口,进程(EXCEL.EXE)仍然存在(我在右上angular的红色X)。 我错过了一个设置或什么? 我希望Excel窗口独立于C#程序,所以如果我结束了后者,前者仍然是可见的。
如果你想真正独立,那么你应该使用Process.Start
来启动Excel。
你需要的最简单的版本是:
Process.Start(Path.Combine(xlsx.saveLocation, xlsx.fileName));
尽pipe我build议使用合适的Path
方法将目录和文件名合并到一个完整的path中。 Path.Combine
资源
如果你的path或文件名有空格,那么你需要把整个东西用引号包起来:
var arguments = new StringBuilder("\""); arguments.Append(Path.Combine(xlsx.saveLocation, xlsx.fileName)); arguments.Append("\""); Process.Start(arguments.ToString());
(虽然在这种情况下StringBuilder
可能是矫枉过正的)
你应该通过调用Process.Start(filename)
来打开文件。
这将在用户的默认程序中打开文件,而无需将代码绑定到Excel。
如果你需要操纵Excel,这将无济于事。