Excel добавляет данные в таблицу Worksheet в коде

Привет, ребята, я создаю файл Excel с тремя листами в следующем коде.

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(); } 

Мне нужно знать, как я могу заполнить ячейки трех таблиц. Мне нужно просто добавить строки к некоторым ячейкам, которые, вероятно, будут находиться в каком-то массиве данных или многомерных массивов.

 private static void InsertValuesInWorksheet(WorksheetPart worksheetPart, IEnumerable<string> values) { var worksheet = worksheetPart.Worksheet; var sheetData = worksheet.GetFirstChild<SheetData>(); var row = new Row { RowIndex = 1 }; // add a row at the top of spreadsheet sheetData.Append(row); int i = 0; foreach (var value in values) { var cell = new Cell { CellValue = new CellValue(value), DataType = new EnumValue<CellValues>(CellValues.String) }; row.InsertAt(cell, i); i++; } } 

Этот метод добавит новую строку к указанному листу и заполнит ячейки строки значениями из массива. В вашем примере кода его можно было бы назвать следующим:

 var values = new[] {"foo", "bar", "baz"}; InsertValuesInWorksheet(newWorksheetPart1, values); InsertValuesInWorksheet(newWorksheetPart2, values); InsertValuesInWorksheet(newWorksheetPart3, values); 
  • Microsoft Open SDK 2.0 для генерации файла excel с использованием c #
  • Open XML SDK v2.0 Проблема с производительностью при удалении первой строки в 20 000 + строк файла Excel
  • Невозможно установить желаемый цвет фона в excel с помощью openxml
  • Использование OleDB для чтения Таблицы, созданной с использованием Open XML 2.5 SDK
  • Добавьте собственное пространство имен и используйте его в openxml excel через c # openxml sdk
  • OpenXML для создания DataTable из Excel - значение денежной ячейки неверно
  • Формат столбца OpenXML Excel?
  • OpenXmlElement, как узнать его значение, - Date / DateTime
  • Доступ к значениям ячеек в строке Excel с помощью OpenXML. Ссылка на объект не установлена ​​в экземпляр объекта
  • Как создать файл Excel с помощью OpenXML без создания локального файла?
  • Как сгенерировать образцы SpreasheetML для всех трех параметров совместимости дат из Excel 2010?
  • Interesting Posts

    Как добавить запятую в значения выпадающего списка?

    Изменение встроенной книги Excel в документе Word через VBA

    Увеличение ячейки в Excel, которая связана с разными столбцами и формулами, и я хочу записать результаты каждого приращения, выполненного

    Ускорение макроса VBA с несколькими операциями «For» и «if»

    Как найти полный сетевой путь к файлу excel, совместно используемому в сети?

    Использование функции Date VBA, но перед ее форматированием нужно добавить четыре часа.

    Если текстовая строка содержит поисковое слово из списка, верните определенный текст

    Копирование нескольких столбцов из нескольких листов в новую книгу и фильтра по дате

    Заполнение записей в документе Excel

    Использование функции Webservice в Excel для переноса «Даты следующей прибыли» от Yahoo Finance с помощью API Yahoo

    Консолидация отдельных листов из разных книг в один лист

    Формула Excel для извлечения последней части URL-адреса

    excel CUMIPMT. функция в javascript

    Не удается распечатать вкладку Excel?

    Заменить скрипт, не работающий с файлами unicode txt

    Давайте будем гением компьютера.