C# 尝试保存Excel工作簿时未处理COMException
我正在尝试创建一个Excel工作簿并将其保存到我的桌面上,目前为止,我的C代码如下: 在我试图保存工作簿实例的最后一行发生的错误。Visual Studio说:“WikiScrapData.exe中发生“System.Runtime.InteropServices.COMException”类型的未处理异常。”。我查看了MSDN和其他来源,但未能解决该问题C# 尝试保存Excel工作簿时未处理COMException,c#,.net,windows,excel,C#,.net,Windows,Excel,我正在尝试创建一个Excel工作簿并将其保存到我的桌面上,目前为止,我的C代码如下: 在我试图保存工作簿实例的最后一行发生的错误。Visual Studio说:“WikiScrapData.exe中发生“System.Runtime.InteropServices.COMException”类型的未处理异常。”。我查看了MSDN和其他来源,但未能解决该问题 如何正确保存此Excel工作簿?您在项目中使用了吗?@Hackerman不,只是命名上的巧合。目前我唯一能想到的是,它不喜欢您保存它的位置。
如何正确保存此Excel工作簿?您在项目中使用了吗?@Hackerman不,只是命名上的巧合。目前我唯一能想到的是,它不喜欢您保存它的位置。尝试一些更简单的方法,比如
@“C:\Temp\TestFile.xlsx”
。如果这样做有效,它会给你一个解决方案的提示。@IInspectable:你是正确的,但是.NET framework也接受这两个选项,所以这不是问题的根源。@Frecklefoot:the工作簿
是一个COM对象。即使.NET接受这两个字符作为路径分隔符(我对此表示怀疑,但我懒得检查引用源),这也无关紧要。NET不转换传递给本机COM对象的路径参数。您在项目中使用了吗?@Hackerman不,只是命名上的巧合。目前我唯一能想到的是,它不喜欢您保存它的位置。尝试一些更简单的方法,比如@“C:\Temp\TestFile.xlsx”
。如果这样做有效,它会给你一个解决方案的提示。@IInspectable:你是正确的,但是.NET framework也接受这两个选项,所以这不是问题的根源。@Frecklefoot:the工作簿
是一个COM对象。即使.NET接受这两个字符作为路径分隔符(我对此表示怀疑,但我懒得检查引用源),这也无关紧要。NET不会转换传递给本机COM对象的路径参数。
using System
using System.Net
using Microsoft.Office.Interop.Excel;
//LAUNCH AND TEMPLATE EXCEL
Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
Workbook wb = xlApp.Workbooks.Add();
Worksheet ws = (Worksheet)wb.Worksheets[1]
ws.Cells[1, 1] = "Report Date";
ws.Cells[1, 2] = "Catagories";
ws.Cells[1, 3] = "Page Name";
ws.Cells[1, 4] = "Last Revision Date";
ws.Cells[1, 5] = "Beginning Total";
ws.Cells[1, 6] = "Ending Total";
ws.Cells[1, 7] = "Monthly Total";
ws.Cells[1, 8] = "YTD";
//LAUNCH AND TEMPLATE EXCEL
wb.SaveCopyAs("C:/Users/pta72645/Desktop/TestFile5_2.xlsx"); //save Excel, **ERROR OCCURS HERE**