Как создать лист excel с несколькими именами листов на основе модулей ?
Я работаю над настольным приложением c# и не могу экспортировать данные в лист excel с несколькими вкладками
значение мульти лист на основе данных существует на поле модуля таблицы данных
Я использую библиотеку open XML
Таблица данных данные как показано ниже :
Divide Output Excel File To Multi Tab based On Module PartId Company Files Tab Module 1222 micro Abc source 1 1321 silicon Abc source 1 1444 cd2 Abc types 2 1321 cd3 Abc types 2 1541 tvs Abc types 2
ожидаемый результат :
Создать файл ABC.xlsx с двумя листами первый источник имени листа и второй тип имени листа основаны на модуле и загружают данные, связанные с каждым листом, на основе данных, связанных с каждым листом .
потому что каждый модуль имеет разный лист .
так что если у меня есть два модуля, то это означает, что у меня есть два листа .
Что я уже пробовал:
public Boolean createExcelFile(DataTable Table,String FullFilePathName) { Boolean IsDone = false; try { FileInfo CreatedFile = new FileInfo(FullFilePathName); Boolean ISNew = false; if (!CreatedFile.Exists) { ISNew = true; } using (var pck = new ExcelPackage(CreatedFile)) { ExcelWorksheet ws; if (ISNew == true) { ws = pck.Workbook.Worksheets.Add("Sheet"); if (System.Threading.Thread.CurrentThread.CurrentCulture.TextInfo.IsRightToLeft) // Right to Left for Arabic lang { ExcelWorksheetView wv = ws.View; wv.ZoomScale = 100; wv.RightToLeft = true; ws.PrinterSettings.Orientation = eOrientation.Landscape; } else { ExcelWorksheetView wv = ws.View; wv.ZoomScale = 100; wv.RightToLeft = false; ws.PrinterSettings.Orientation = eOrientation.Landscape; } ws.Cells.AutoFitColumns(); ws.Cells[1, 1].LoadFromDataTable(Table, ISNew, OfficeOpenXml.Table.TableStyles.Light8); } else { ws = pck.Workbook.Worksheets.FirstOrDefault(); ws.Cells[2, 1].LoadFromDataTable(Table, ISNew); } pck.Save(); IsDone = true; } } catch (Exception ex) { throw ex; } return IsDone; }