您好我正在使用以下c#代码从Web应用程序编写excel工作簿,并尝试将excel保存在我的计算机中。
Excel._Application excelApp = new Excel.Application();
string excelFile = HttpContext.Current.Server.MapPath("~/ExcelTemplate/Sample.xlsx");
Excel._Workbook workbook = excelApp.Workbooks.Add(excelFile);
Excel._Worksheet worksheet = workbook.Sheets["Analytics"] as Excel.Worksheet;
Excel.Range cells = worksheet.Cells;
cells[1, 1].Value = "Details Between " + StartDate.ToString("dd-MMM-yyyy") + " & " + EndDate.ToString("dd-MMM-yyyy");
cells[18, 1].Value = "Response Details Between " + StartDate.ToString("dd-MMM-yyyy") + " & " + EndDate.ToString("dd-MMM-yyyy");
cells[1, 8].Value = "Detailed Response Between " + StartDate.ToString("dd-MMM-yyyy") + " & " + EndDate.ToString("dd-MMM-yyyy");
workbook.SaveAs(@"C:\ExportedSheet.xlsx", Excel.XlFileFormat.xlOpenXMLWorkbook, Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Excel.XlSaveAsAccessMode.xlNoChange, Excel.XlSaveConflictResolution.xlUserResolution, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
workbook.Close();
每次SaveAs方法抛出异常时,都说无法访问" ExportedSheet.xlsx"。我无法找到任何解决方法,请帮我解决问题。
提前致谢!
答案 0 :(得分:0)
了解确切的错误将有助于解决此问题。由于您没有提到您注意到的错误,请尝试以下步骤。如果这没有帮助,请将代码放在try-catch块中。捕获异常后打印错误消息。打开excel工作簿并取消选中导致此错误的选项。保存工作簿并执行代码。
打开Excel文件 - C:\ ExportedSheet.xlsx
转到 - 文件 - >选项 - > Trust Ceneter - >信任中心设置 - >隐私选项。在“文档特定选项”下,取消选中“保存时删除文件属性的个人信息”。 保存excel文件。执行代码。
打开Excel文件 - C:\ ExportedSheet.xlsx
单击“审阅”选项卡。在“共享工作簿” - >“编辑”选项下,取消选中 - 允许多个用户同时进行更改。这也允许工作簿合并。 保存excel文件。执行代码。
试 { //码 } catch(Exception ex) { //打印错误 - ex.Message }