我想在我的C#应用​​程序excel文件(xls)中打开现有文件,并写到特定的列都很好,但是每次我打开文件时,它只说读,知道如何保存到它吗?

这是我当前的代码:

Microsoft.Office.Interop.Excel.Application excelApp = new Microsoft.Office.Interop.Excel.Application();

string myPath = txtPath.Text.ToString();

excelApp.Workbooks.Open(myPath);

excelApp.Cells[8, 3] = txtSum1.Text.ToString();
excelApp.Cells[8, 4] = txtId1.Text.ToString();
excelApp.Visible = true;

最佳答案

多个工作簿正在打开,并且无法覆盖前一个工作簿。因此,关闭一个实例并打开下一个实例,它应该可以工作。

 Microsoft.Office.Interop.Excel.Application excelApp = new
 Microsoft.Office.Interop.Excel.Application();
 string myPath = txtPath.Text.ToString();

 excelApp.Workbooks.Open(myPath, 0, false, 5, "", "", false,
 Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "",
            true, false, 0, true, false, false);
 excelApp.Cells[8, 3] = txtSum1.Text.ToString();
 excelApp.Cells[8, 4] = txtId1.Text.ToString();

excelApp.ActiveWorkbook.Save();
excelApp.Workbooks.Close();
excelApp.Quit();

10-08 09:46