Czy ktoś wie, jak to zrobić?Tabela przestawna EPPlus - Zwiń całe pole
Używam EPPlus w .NET i stworzyliśmy tabelę przestawną z 2 pól wierszy i jednej zbiorczej dataField:
Dim Pivot As OfficeOpenXml.Table.PivotTable.ExcelPivotTable
Pivot = wksPivot.PivotTables.Add(wksPivot.Cells("A1"), Datarange, "pName")
Pivot.RowFields.Add(Pivot.Fields("Fld1")).Sort = Table.PivotTable.eSortType.Ascending
Pivot.RowFields.Add(Pivot.Fields("Fld2")).Sort = Table.PivotTable.eSortType.Ascending
Dim dtaFld As OfficeOpenXml.Table.PivotTable.ExcelPivotTableDataField
dtaFld = Pivot.DataFields.Add(Pivot.Fields("XYZ"))
dtaFld.Function = Table.PivotTable.DataFieldFunctions.Sum
wszystko działa świetnie, ale chcę mieć Pivot Table rozpocząć jak zawalił kiedy użytkownik otwiera skoroszyt (w programie Excel, gdy tworzysz tabelę przestawną, możesz kliknąć element danych prawym przyciskiem myszy i wybrać "Rozwiń/zwiń"> "Zwiń całe pole"
Gorąco mogę to zrobić przez kod ?? (I jestem skłonny użyć bezpośredniego OpenXML, jeśli EPPlus jeszcze tego nie obsługuje ...)
TAKŻE TAKŻE, czy istnieje sposób usunięcia danych surowych ze skoroszytu, aby tabela przestawna nadal działała? próbowałem i po otwarciu skoroszytu mój tabela przestawna jest pusta? - Moja obecna logika doprowadziła mnie do this question ... Jakieś myśli?
(wiem, pisałem to pytanie w VB ale dodałem zarówno C#
& VB
tagów na to pytanie. - Jestem zadowolony z kodu w każdym języku - Dzięki !!)
Jako dodatek do tego pytania, ponieważ nikt nie odpowiedział na to, co skończyło się robi było stworzenie arkusza z DataTable przy użyciu EPPlus dla prędkości, a następnie zapisanie go . Następnie otworzyłem arkusz przy użyciu interfejsu Excel.Interop, utworzyłem tabelę przestawną i użyłem "Field1.ShowDetail = False", aby zwinąć go tak, jak chciałem ... –
Jako dodatek do mojego dodatku ... powyższy komentarz już mi nie służy, ponieważ teraz chcę przenieść tę aplikację do ASP/IIS, więc Excel Interop nie jest już prawidłową możliwością ... –