C#-COMexception未处理-无法访问只读文档?
我是C#新手,试图通过互操作库完成一些简单的excel操作 我想删除一个文本值,它总是显示为实际数据表下面的一行(表和文本之间有一个空行)。这是一个“选定行数”。它在自动报告中打印出来。它总是出现在第一列中 删除行并尝试关闭()工作簿后,出现错误“COMexception unhandled-Cannot access read-only document-test1.xlsx” 我似乎无法发布该工作簿,我已经尝试了许多在其他论坛上找到的随机垃圾收集方法,但以前有人见过吗 谢谢你的帮助 编辑-使文件在我开始运行程序之前不是只读的。一旦我运行这个程序,它就会被锁定并且是只读的。它没有关闭/释放工作簿 编辑-我最后添加了一个Workbook.Save()函数并使用了应用程序对象的Quit()函数。这个问题也很有用()C#-COMexception未处理-无法访问只读文档?,c#,excel-interop,C#,Excel Interop,我是C#新手,试图通过互操作库完成一些简单的excel操作 我想删除一个文本值,它总是显示为实际数据表下面的一行(表和文本之间有一个空行)。这是一个“选定行数”。它在自动报告中打印出来。它总是出现在第一列中 删除行并尝试关闭()工作簿后,出现错误“COMexception unhandled-Cannot access read-only document-test1.xlsx” 我似乎无法发布该工作簿,我已经尝试了许多在其他论坛上找到的随机垃圾收集方法,但以前有人见过吗 谢谢你的帮助 编辑-使
最后,我添加了一个Workbook.Save()函数,并使用了应用程序对象的Quit()函数。这个问题也非常有用()。试图从只读电子表格中删除行是浪费时间,行不通。它是只读的。这不会让任何人感到迷惑。在我开始运行程序之前,它不是只读工作簿。程序开始编辑工作簿时,未正确执行Close()函数。
public void ExcelManip(string thisFileName)
{
Workbook workBook = _excelApp.Workbooks.Open(thisFileName,
Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing, Type.Missing, Type.Missing,
Type.Missing, Type.Missing);
DeleteRowCount(ref workBook);
workBook.Save();
workBook.Close(false, Type.Missing, Type.Missing);
_excelApp.Application.Quit();
_excelApp.Quit();
//workBook.Close(true, thisFileName);//ERROR;Cannot access read-only document
//Marshal.ReleaseComObject(workBook);
//GC.Collect();
//GC.WaitForPendingFinalizers();
}