[英]Unable to update an existing excel file with values for a certain cell in C#
我开发了一个程序,试图更新现有 excel 工作表的某些单元格。 当我尝试设置某些单元格的值时,我找不到应用到已保存的 excel 工作表的更改。 以下是使用特定值更新 excel 工作表单元格的方法代码:
public static string filePath = @"D:\Egyption Consulate\StatisticalTemplate.xlsx";
public void UpdateExcelTmplate(Dictionary<int,int> source, string ExcelHeader)
{
Application xlApp = new Application();
Workbook xlWorkBook = xlApp.Workbooks.Open(filePath, 0, false, 5, "", "", false,
Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "", true, false, 0, true, false, false);
Worksheet xlWorkSheet = (Worksheet)xlWorkBook.Worksheets.get_Item(1);
Range xlRange = xlWorkSheet.UsedRange;
xlWorkSheet.Cells[3, 12] = source[0];
xlWorkSheet.Cells[4, 12] = source[1];
xlWorkSheet.Cells[5, 12] = source[0] + source[1];
xlApp.DisplayAlerts = false;
xlWorkBook.SaveAs(filePath, XlFileFormat.xlOpenXMLWorkbook,
Missing.Value, Missing.Value, Missing.Value, Missing.Value, XlSaveAsAccessMode.xlNoChange,
XlSaveConflictResolution.xlLocalSessionChanges, Missing.Value, Missing.Value,
Missing.Value, Missing.Value);
xlWorkBook.Close();
xlApp.Quit();
Marshal.ReleaseComObject(xlWorkSheet);
Marshal.ReleaseComObject(xlWorkBook);
Marshal.ReleaseComObject(xlApp);
MessageBox.Show("Done");
}
我检查了 stackoverflow 上的所有帖子,它们使用的方式与我使用的方式相同,但我的问题是单元格的值未更新。 有谁知道这个问题背后的原因是什么?
我现在知道这个问题了。 除了我使用了 excel 行和列的错误索引之外,excel 文件上还有一个锁。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.