2014-09-01 74 views
3

我必須使用現有的Excel並將內容放置在特定的單元格上,並通過ASP.Net MVC網站將其提供給用戶。原來的excel不應該改變,所以它可以用作模板。 這個問題雖然在功能上都與EPPlus一起使用,但原來的excel的行高卻完全丟失在最終的excel中。EPPlus丟失行高

using (ExcelPackage package = new ExcelPackage(new FileInfo(NewFile), new FileInfo(Template))) 
     { 
      ExcelWorksheet excelSheet = package.Workbook.Worksheets[1]; 
      //Do all process, mainly set specific cell values 
      package.Save(); 
     } 
     //Return the new file to user 
+0

你可以給出更多的解釋,你是什麼意思行高度丟失?生成的excel文件是否工作?你可以展示一些你設置值的代碼嗎? – Chris 2014-10-09 15:53:41

+0

你看過這個討論嗎? http://stackoverflow.com/questions/29739517/epplus-excel-row-height-not-consistent – SilverSkin 2015-07-07 22:55:57

+0

我有同樣的問題,代碼運行後,它完全改變模板中的行的高度,即使他們沒有以任何方式解決(不是插入的值或樣式改變,沒有)。即使worksheet.Row(i).Height停止工作。在空模板它工作正常 - 它保持行高度和工作表.Row(i).Height工作... 我想知道你設法找到一個解決方案? @Persuader – astian 2016-02-17 12:30:00

回答

0

我總是先創建我的文件的副本,而不是打開任何我想保持不變的文件。我會嘗試:

File.Copy(originalTemplate, workingTemplate, true); 
using (ExcelPackage package = new ExcelPackage(new FileInfo(NewFile), new FileInfo(workingTemplate))) 
    { 
     ExcelWorksheet excelSheet = package.Workbook.Worksheets[1]; 
     //Do all process, mainly set specific cell values 
     package.Save(); 
    } 
    //Return the new file to user