是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应用程序中看到。
多谢你们