static void WriterTest(string FileName) { using var document = SpreadsheetDocument.Create(FileName, SpreadsheetDocumentType.Workbook); // create the workbook var workbook_part = document.AddWorkbookPart(); var wbsp = workbook_part.AddNewPart <WorkbookStylesPart>(); #region Styles var styles = new OpenXmlExStyles( new List <BaseOpenXmlExStyle>() { new BaseOpenXmlExStyle() { FontColor = System.Drawing.Color.Crimson, IsBoldFont = true }, new BaseOpenXmlExStyle() { FontSize = 20, FontName = "Calibri", BorderColor = System.Drawing.Color.Red } }); wbsp.Stylesheet = styles.Styles; wbsp.Stylesheet.Save(); #endregion #region document start var workbook = workbook_part.Workbook = new Workbook(); var sheets = workbook.AppendChild(new Sheets()); #endregion #region Sheet DATA var sheet_name = "Test_sheet_name"; var ws_part = workbook_part.AddNewPart <WorksheetPart>(); // sheet var sheet_1 = new Sheet { Id = workbook_part.GetIdOfPart(ws_part), SheetId = 1, Name = sheet_name }; // ReSharper disable once PossiblyMistakenUseOfParamsMethod sheets.Append(sheet_1); #endregion using var writer = new OpenXmlWriterEx(ws_part, styles); writer.WriteStartElement(new Worksheet()); #region Надстройка страницы - кнопки группировки сверху writer.SetGrouping(false, false); #endregion #region Установка ширины колонок //Установка размеров колонок var width_setting = new List <WidthOpenXmlEx> { new (1, 2, 7), new (3, 3, 11), new (4, 12, 9.5), new (13, 13, 17), new (14, 14, 40), new (15, 16, 15), new (18, 20, 15) }; writer.SetWidth(width_setting); #endregion writer.WriteStartElement(new SheetData()); #region 1 лист var(key, value) = writer.FindStyleOrDefault( new BaseOpenXmlExStyle() { FontColor = System.Drawing.Color.Crimson, //FontSize = 20, //IsBoldFont = true, //LeftBorderStyle = BorderStyleValues.Dashed, //RightBorderStyle = BorderStyleValues.Dashed }); writer.AddRow(3, 0, false, true); writer.AddCell("Test", 1, 3, 0); writer.AddCell("Test", 7, 3, 0); writer.CloseRow(3); writer.AddRow(4, 0, false, true); writer.AddCell("Test", 4, 4, 1); writer.AddCell("Test", 5, 4, 2); writer.AddCell("Test", 6, 4, 3); writer.AddCell("Test", 7, 4, 3); writer.MergeCells(6, 3, 10, 5); writer.CloseRow(4); #region Секция настроек writer.SetFilter(1, 5, 3, 5, sheet_name); #endregion #endregion }
static void EasyWriterTest(string FileName) { var styles = new OpenXmlExStyles( new List <BaseOpenXmlExStyle>() { new BaseOpenXmlExStyle() { FontColor = System.Drawing.Color.Crimson, IsBoldFont = true }, new BaseOpenXmlExStyle() { FontSize = 20, FontName = "Calibri", BorderColor = System.Drawing.Color.Red } }); using var writer = new EasyWriter(FileName, styles); #region 1 лист var sheet_name_1 = "Test_sheet_name"; writer.AddNewSheet(sheet_name_1); #region Надстройка страницы - кнопки группировки сверху writer.SetGrouping(false, false); #endregion #region Установка ширины колонок //Установка размеров колонок var width_setting = new List <WidthOpenXmlEx> { new (1, 2, 7), new (3, 3, 11), new (4, 12, 9.5), new (13, 13, 17), new (14, 14, 40), new (15, 16, 15), new (18, 20, 15) }; writer.SetWidth(width_setting); #endregion var(key, value) = writer.FindStyleOrDefault( new BaseOpenXmlExStyle() { FontColor = System.Drawing.Color.Crimson, FontSize = 20, IsBoldFont = true, LeftBorderStyle = BorderStyleValues.Dashed, RightBorderStyle = BorderStyleValues.Dashed }); #region SheetData writer.AddRow(3, 0, true, true); writer.AddCell("Test", 1, 3, 0); writer.AddCell("Test", 7, 3, 0); writer.AddRow(4, 0, true, true); writer.AddCell("Test", 4, 4, 1); writer.AddCell("Test", 5, 4, 2); writer.AddCell("Test", 6, 4, 3); writer.AddCell("Test", 7, 4, 3); #endregion #region Secondary setting writer.MergeCells(6, 3, 10, 5); writer.SetFilter(1, 5, 3, 5); #endregion #endregion #region 2 лист var sheet_name_2 = "Sheet 2.0"; writer.AddNewSheet(sheet_name_2); #region Надстройка страницы - кнопки группировки сверху writer.SetGrouping(false, false); #endregion #region Установка ширины колонок writer.SetWidth(width_setting); #endregion #region SheetData writer.AddRow(3, 0, true, true); writer.AddCell("Test 2", 1, 3, 0); writer.AddCell("Test 2", 7, 3, 0); writer.AddRow(4, 0, true, true); writer.AddCell("Test 2", 4, 4, 1); writer.AddCell("Test 2", 5, 4, 2); writer.AddCell("Test 2", 6, 4, 3); writer.AddCell("Test 2", 7, 4, 3); writer.MergeCells(6, 3, 10, 5); #endregion #region Secondary setting writer.SetFilter(1, 5, 3, 5); #endregion #endregion }
/// <inheritdoc /> public OpenXmlWriterEx( OpenXmlPart OpenXmlPart, OpenXmlExStyles styles) : base(OpenXmlPart) => Style = styles;