Lägg till filter i pivot tabell

Möjliga användningsscenario

När du skapar en pivot-tabell med kända data och vill filtrera pivot-tabellen, behöver du lära dig och använda filter. Det kan hjälpa dig att effektivt filtrera ut den data du vill ha. Genom att använda Aspose.Cells for Python via .NET API kan du lägga till filter på fältvärden i Pivot Tabeller.

Lägg till filter i pivot tabell med hjälp av Aspose.Cells för Python Excel-bibliotek

Se följande exempelkod. Den anger datan och skapar en pivot-tabell baserad på den. Sedan läggs ett filter på radfältet i pivot-tabellen. Slutligen sparas arbetsboken i utmatnings XLSX format. Efter att ha kört exempelkoden läggs en pivottabell med topp10-filter till arbetsbladet.

Exempelkod

from aspose.cells import ConsolidationFunction, Workbook
from aspose.cells.pivot import PivotFieldType, PivotFilterType
# Instantiating an Workbook object
workbook = Workbook()
# Obtaining the reference of the newly added worksheet
ws = workbook.worksheets[0]
cells = ws.cells
# Setting the value to the cells
cell = cells.get("A1")
cell.put_value("Fruit")
cell = cells.get("B1")
cell.put_value("Count")
cell = cells.get("A2")
cell.put_value("Apple")
cell = cells.get("A3")
cell.put_value("Mango")
cell = cells.get("A4")
cell.put_value("Blackberry")
cell = cells.get("A5")
cell.put_value("Cherry")
cell = cells.get("A6")
cell.put_value("Guava")
cell = cells.get("A7")
cell.put_value("Carambola")
cell = cells.get("A8")
cell.put_value("Banana")
cell = cells.get("B2")
cell.put_value(5)
cell = cells.get("B3")
cell.put_value(3)
cell = cells.get("B4")
cell.put_value(6)
cell = cells.get("B5")
cell.put_value(4)
cell = cells.get("B6")
cell.put_value(5)
cell = cells.get("B7")
cell.put_value(2)
cell = cells.get("B8")
cell.put_value(20)
# Adding a PivotTable to the worksheet
i = ws.pivot_tables.add("=A1:B8", "D10", "PivotTable1")
# Accessing the instance of the newly added PivotTable
pivotTable = ws.pivot_tables[i]
pivotTable.add_field_to_area(PivotFieldType.ROW, 0)
pivotTable.add_field_to_area(PivotFieldType.DATA, "Count")
pivotTable.data_fields[0].function = ConsolidationFunction.SUM
field = pivotTable.row_fields[0]
field.is_auto_sort = True
field.is_ascend_sort = False
field.auto_sort_field = 0
# Add top10 filter
index = pivotTable.pivot_filters.add(0, PivotFilterType.COUNT)
filter = pivotTable.pivot_filters[index]
filter.auto_filter.filter_top10(0, True, False, 5)
pivotTable.refresh_data()
pivotTable.calculate_data()
workbook.save("out.xlsx")