2014-04-04 95 views
1

我使用EPPlus來導出excel。我已經完成了一些功能來獲得「ExcelWorksheet」。我想用一個excel(每個標籤一個)加入所有這些,但我不知道該怎麼做。EPPlus多個選項卡c#

這裏的主要功能是:

public ActionResult ExportReports(string sheetName) 
{ 
    try 
    { 
     var req = GetRequest(); 
     var fileDownloadName = "OnlineReport.xlsx"; 
     var contentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; 

     var package = new ExcelPackage(); 
     var ws1 = AnalysisByAirCarrier(package, req); 
     var ws2 = Summary(package, req); 

     var fileStream = new MemoryStream(); 
     package.SaveAs(fileStream); 
     fileStream.Position = 0; 
     var fsr = new FileStreamResult(fileStream, contentType); 
     fsr.FileDownloadName = fileDownloadName; 

     return fsr; 
    } 
    catch (Exception ex) 
    { 
     _logger.Error("Error ExportReports", ex); 
    } 
} 

我想加盟WS1和WS2在不同的標籤相同的文件。

注:WS1和WS2是ExcelWorksheet對象

什麼想法?

謝謝。

回答

5

應該能夠到工作表的副本添加到工作簿的標籤:

using(var package = new ExcelPackage()) 
{ 
    package.Workbook.Worksheets.Add("First worksheet 1", ws1); 
    package.Workbook.Worksheets.Add("First worksheet 2", ws2); 
    // Do something with the package 
} 

我不知道你在AnalysisByAirCarrierSummary做什麼,雖然。

我沒有測試它,但添加空白工作表,並對其運行與預期對我的作品(它會創建多個選項卡,我可以填充內容)

[編輯]:更新「一表」評論

+0

謝謝,這是工作。我得到一個錯誤,但是因爲工作簿中已經存在一個具有此名稱的工作表。我已經更新了它,它工作正常。 – gon250

+0

@ gon250哦,對,對不起。我以爲我改變了工作表名稱。我很高興它雖然工作! –