2016-12-08 1 views
2

Я прошел учебники E-Iceblue для создания групп excel в C#, но не смог найти вариант свернуть/развернуть вариант выше свернутых строк.В C#, используя Spire.Xls, группировать строки листа excel с параметром collapse/expand над свернутыми строками

Чтобы сгруппировать строки, я использовал код ниже:

Worksheet sheet = workbook.Worksheets[0]; 

     sheet.GroupByRows(2, 9, true); 

Но/значок расширения коллапса рядом строки ниже свернутых строк по умолчанию. Мне нужна эта опция в строке над свернутыми строками. Я знаю, что это можно сделать вручную на листе excel. В excel 2013, вкладка данных, Настройки структуры, после снятия отметки «Сводные строки ниже детали» значок свернуть/развернуть перемещается над деталями.

Мой вопрос в том, как мы можем это сделать в коде C# с использованием Spire.Xls?

ответ

1

Редактировать: МОЖНО быть выполнен с использованием Spire.Xls. Нашел решение на E-iceblue, Spire.Xls, forum. Следующая строка кода выполняет задание.

sheet.PageSetup.IsSummaryRowBelow = false; 

Если кто-то хочет это сделать через OpenXML, обратитесь к исходному ответу ниже.


не может быть сделано с помощью Spire.XLS (во время этого ответа). Может быть сделано с использованием OpenXML.

Вот этот E-iceblue, Spire.Xls, форум link для этой темы. Как упоминалось в форуме, эта функция может появиться в будущем выпуске.

Для тех, кто еще спотыкаясь на эту тему, это можно сделать с помощью OpenXML, используя приведенный ниже код (при условии, что остальная часть кода листа первенствовать осуществляется с помощью Spire.XLS):

Workbook ReportWorkbook = new Workbook(); 

//Spire.Xls code here 

//Save file 
ReportWorkbook.SaveToFile("myExcel.xlsx", ExcelVersion.Version2010); 

//Open the excel using OpenXML 
using (DocumentFormat.OpenXml.Packaging.SpreadsheetDocument oXmlSheet = 
    DocumentFormat.OpenXml.Packaging.SpreadsheetDocument.Open("myExcel.xlsx", true)) 
{ 
    var oXmlWorkbook = oXmlSheet.WorkbookPart.Workbook; 

    //Get the sheet property object for the first sheet 
    var sp = oXmlWorkbook.WorkbookPart.WorksheetParts.ToList()[0].Worksheet.SheetProperties; 

    //Initialize outline properties 
    sp.OutlineProperties = new DocumentFormat.OpenXml.Spreadsheet.OutlineProperties(); 

    //Update sheet outline properties so that, 
    //the option to expand/collapse row groups is shown beside the row above the grouped rows. 
    sp.OutlineProperties.SummaryBelow = false; 

    //Save file 
    oXmlWorkbook.Save(); 
} 
Смежные вопросы