如何从模板excel表格编程创buildExcel表格?

我正在从tempalte excel表单创build一个excel表单。

我有一个代码

try { FileInfo newFile = new FileInfo(@"D:\ExcelFromTemplate.xlsx"); FileInfo template = new FileInfo(@"D:\template.xlsx"); using (ExcelPackage xlPackage = new ExcelPackage(newFile,template)) { ExcelWorksheet worksheet = xlPackage.Workbook.Worksheets["Sheet1"]; ExcelCell cell = worksheet.Cell(5,1); cell.Value = "15"; //worksheet.Cell(5, 1).Value = "Soap"; //xlPackage.Save(); Response.Write("Excel file created successfully"); } } catch (Exception ex) { Response.WriteFile(ex.InnerException.ToString()); } 

此代码创build与模板excel文件相同的新excel文件,但不能添加单元格值。 为什么?

我已经用2种方式尝试了,如上面的单元格代码(5,1)。 但Excel表单创build时没有写入单元格的值。 我们如何添加它。

问候,Girish

您需要保存该文件以保留所做的更改。 使用save()

  try { FileInfo newFile = new FileInfo(@"D:\ExcelFromTemplate.xlsx"); FileInfo template = new FileInfo(@"C:\Example.xlsx"); using (ExcelPackage xlPackage = new ExcelPackage(newFile , template)) { //Added This part foreach (ExcelWorksheet aworksheet in xlPackage.Workbook.Worksheets) { aworksheet.Cell(1, 1).Value = aworksheet.Cell(1, 1).Value; } ExcelWorksheet worksheet = xlPackage.Workbook.Worksheets["My Data"]; ExcelCell cell = worksheet.Cell(5, 1); cell.Value = "15"; //worksheet.Cell(5, 1).Value = "Soap"; xlPackage.Save( ); //Response.Write("Excel file created successfully"); } } catch (Exception ex) { //Response.WriteFile(ex.InnerException.ToString()); } 

得到了问题。 该徽章是ExcelPackage固有的。 为此,你必须打开每张纸,并做一些改变,以获得保存。

search论坛获取更多解释。