, was ich brauche, ist Reihen-Gruppe, wenn der Wert der Zeile die gleiche wie die vorhergehende Zeile ist, ist der Wert von „B3“ das gleiche von „B2“, wie folgt aus:Gruppierung Excel-Zeilen mit EPPLUS
ich benutze C# mit epplus, und ich sehe, wie ich etwas ähnliches mit der Umriss-Option tun kann, und ist ähnlich, was ich will, aber diese Option hat einige Nachteile, wie das was nicht tut gruppiert automatisch auf Basis von Werten und kann verschiedene Gruppen nicht ausführen ....
ist es möglich, dies mit EPPLUS zu tun? wenn es ist nicht posible, wie ich den VBA-Code C# hinzufügen kann ?, ich versuche dies:
StringBuilder vbaCode = new StringBuilder();
vbaCode.AppendLine("Sheets('Sheet1').Activate");
vbaCode.AppendLine("Range('A1: D11').Select");
vbaCode.AppendLine("Selection.Subtotal GroupBy:= 1, Function:= xlSum, TotalList:= Array(2, 3),Replace:= True, PageBreaks:= False, SummaryBelowData:= True");
pck.Save();
aber nicht arbeiten, ich kann nicht die Excel-Datei öffnen.
EDIT
Mit sugested jetzt ich versuche Interop mit der Gruppenfunktion, aber für einen extrain Grund er Spalten keine Zeilen Gruppierung, dann ist dies der Code:
var ExApp = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Workbooks Wbs = ExApp.Workbooks;
Microsoft.Office.Interop.Excel.Workbook Wb = Wbs.Open(fi.FullName.ToString());
Microsoft.Office.Interop.Excel.Sheets wss = Wb.Worksheets;
Microsoft.Office.Interop.Excel.Worksheet Ws = (Microsoft.Office.Interop.Excel.Worksheet)wss.get_Item("Sheet1");
Ws.Range["A6:A10"].Group();
Ws.Outline.SummaryRow =Microsoft.Office.Interop.Excel.XlSummaryRow.xlSummaryAbove;
ExApp.Visible = true;
EPPlus nicht etwas tun können, die nicht mit Excel ist. Wenn Sie jedoch etwas mit Excel oder VBA machen können, können Sie dies mit EPPlus tun. Sie brauchen nicht VBA, um Zeilen zu gruppieren, Sie können einfach die gleiche Logik in C# schreiben - zB 'sheet.Cells [" A1: D11 "]' wird eine ExcelRange zurückgeben, auf der Sie 'Group' anrufen können –
ja, wird gestellt dass alles, was Sie mit Excel tun können, mit EEPLUS tun, aber ich kann, wie dies zu tun ist, in Excel ist diese Option in der Registerkarte Daten, Zwischensummenoption. Wenn Sie wissen, wie Sie das mit EPPLUS machen, geben Sie bitte ein einfaches Beispiel dafür, wie das funktioniert. wenn ich ** sheet.Cells ["A1: D11"] ** sehe nicht die Gruppenoption, kann ich sehen, dass eine benannte Gruppe existieren, aber nicht verstehen, wie es funktioniert. – Ion