Excel-Daten hinzufügen WorksheetPart im code hinter
Hallo Jungs, ich bin erstellen einer Excel Datei mit 3 Arbeitsblättern in den folgenden code.
using (SpreadsheetDocument spreadSheet = SpreadsheetDocument.Create(path + @"\UrlReport.xlsx", SpreadsheetDocumentType.Workbook))
{
//create the workbook
spreadSheet.AddWorkbookPart();
spreadSheet.WorkbookPart.Workbook = new DocumentFormat.OpenXml.Spreadsheet.Workbook();
//CREATE FIRST SHEET
WorksheetPart newWorksheetPart1 = spreadSheet.WorkbookPart.AddNewPart<WorksheetPart>();
newWorksheetPart1.Worksheet = new DocumentFormat.OpenXml.Spreadsheet.Worksheet();
//create sheet data
newWorksheetPart1.Worksheet.AppendChild(new DocumentFormat.OpenXml.Spreadsheet.SheetData());
//save worksheet
newWorksheetPart1.Worksheet.Save();
//create the worksheet to workbook relation
spreadSheet.WorkbookPart.Workbook.AppendChild(new DocumentFormat.OpenXml.Spreadsheet.Sheets());
spreadSheet.WorkbookPart.Workbook.GetFirstChild<DocumentFormat.OpenXml.Spreadsheet.Sheets>().AppendChild(new DocumentFormat.OpenXml.Spreadsheet.Sheet()
{
Id = spreadSheet.WorkbookPart.GetIdOfPart(newWorksheetPart1),
SheetId = 1,
Name = "Sheet1"
});
//CREATE SECOND SHEET
WorksheetPart newWorksheetPart2 = spreadSheet.WorkbookPart.AddNewPart<WorksheetPart>();
newWorksheetPart2.Worksheet = new DocumentFormat.OpenXml.Spreadsheet.Worksheet();
//create sheet data
newWorksheetPart2.Worksheet.AppendChild(new DocumentFormat.OpenXml.Spreadsheet.SheetData());
//save worksheet
newWorksheetPart2.Worksheet.Save();
//create the worksheet to workbook relation
spreadSheet.WorkbookPart.Workbook.GetFirstChild<DocumentFormat.OpenXml.Spreadsheet.Sheets>().AppendChild(new DocumentFormat.OpenXml.Spreadsheet.Sheet()
{
Id = spreadSheet.WorkbookPart.GetIdOfPart(newWorksheetPart2),
SheetId = 2,
Name = "Sheet2"
});
//CREATE THIRD SHEET
WorksheetPart newWorksheetPart3 = spreadSheet.WorkbookPart.AddNewPart<WorksheetPart>();
newWorksheetPart3.Worksheet = new DocumentFormat.OpenXml.Spreadsheet.Worksheet();
//create sheet data
newWorksheetPart3.Worksheet.AppendChild(new DocumentFormat.OpenXml.Spreadsheet.SheetData());
//save worksheet
newWorksheetPart3.Worksheet.Save();
//create the worksheet to workbook relation
spreadSheet.WorkbookPart.Workbook.GetFirstChild<DocumentFormat.OpenXml.Spreadsheet.Sheets>().AppendChild(new DocumentFormat.OpenXml.Spreadsheet.Sheet()
{
Id = spreadSheet.WorkbookPart.GetIdOfPart(newWorksheetPart3),
SheetId = 3,
Name = "Sheet3"
});
spreadSheet.WorkbookPart.Workbook.Save();
}
Muss ich wissen, wie ich kann füllen Sie die Zellen der 3-Datenblätter. Ich muss nur hinzufügen, Zeichenketten um einige Zellen, die vermutlich in einigen datatable oder ein mehrdimensionales array.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dieser Methode fügen Sie eine neue Zeile in einer angegebenen Arbeitsblatt und füllen Sie die Zeile die Zellen mit den Werten aus einem array. In deinem code-Beispiel, könnte es genannt werden wie diese: