brian155 Ответов: 2

Как я могу создать новую вкладку для каждого проекта в одном файле excel?


Я создаю фиктивный dataTable, а затем в другом классе вызываю его и форматирую в excel. Мой вопрос заключается в том, как сделать так, чтобы каждый проект из dataTable переходил на свою собственную вкладку внутри excel?

Что я уже пробовал:

Я пробовал искать в интернете, но не могу найти никакой релевантной информации.

F-ES Sitecore

Ответ зависит от того, как вы создаете свой файл Excel, который вы еще не сказали.

2 Ответов

Рейтинг:
2

Maciej Los

Коротко И По Существу!

Рейтинг:
2

Maciej Los

Я бы предложил использовать EPPlus[^Это очень интересная и простая в использовании библиотека, которая помогает в создании продвинутых электронных таблиц Excel:

using (ExcelPackage package = new ExcelPackage())
{
     //for each row in DataTable.Rows
     foreach(DataRow dr in yourDataTable.Rows)     
     {
          //get the name of project
          string projectname = dr["project_name"].ToString();
          //if sheet does not exists!
          if(!package.Workbook.Worksheets.Any(sheet => sheet.Name == projectname))
               package.Workbook.Worksheets.Add(projectname);
          //refer to newly added or existing worksheet
          var sh = package.Workbook.Worksheets[projectname]
          //other stuff here!
     }
     string filename= "C:\....\xx.xlsx";
     package.SaveAs(filename);

}


Для получения более подробной информации, пожалуйста, смотрите:
Начало Работы · JanKallman/EPPlus Wiki · GitHub[^]
epplus - начало работы с epplus | epplus Tutorial[^]