是posible编辑打开excel文件

我将一些数据导出到现有的excel文件中。 问题是,用户可以打开这个文件。

为了读写excel,我使用了Microsoft.Office.Interop.Excel.

在Excel桌面应用程序中显示更改可能是编辑文件? 或者有可能检查文件是否在Excel中打开?

这是我如何打开该文件:

 xlApp = new Excel.Application(); xlApp.DisplayAlerts = false; workbook = xlApp.Workbooks; xlWorkBook = workbook.Open(filePath, 0, false, 5, "", "", false, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", true, false, 0, true, false, false); var worksheets = xlWorkBook.Worksheets; 

比遍历所有表和填写数据写入单元格的值

 Excel.Worksheet xlWorkSheet = worksheets.get_Item(sheetIndex); Excel.Range range = GetRange(xlWorkSheet); range.Cells[row,column] = value; 

然后我保存文件:

 xlWorkBook.Save(); 

谢谢Jakub

整个魔法是:

  try { xlApp = (Excel.Application)System.Runtime.InteropServices.Marshal.GetActiveObject("Excel.Application"); } catch (Exception ex) { if (ex.ToString().Contains("0x800401E3 (MK_E_UNAVAILABLE)")) { xlApp = new Excel.Application(); } else { throw; } } 

这将打开excel应用程序。 然后在Excel的这个实例中进行所有更改。 所以一切都被编辑,在打开的excel应用程序中看到。

多谢你们