Lägg till filter i pivot tabell

Möjliga användningsscenario

När du skapar en pivottabell med känd data och vill filtrera pivottabellen måste du lära dig och använda filter. Det kan hjälpa dig att effektivt filtrera bort de data du vill ha. Genom att använda Aspose.Cells for Node.js via C++ API kan du lägga till filter på fältvärden i pivottabeller.

Lägg till filter i pivottabell med Aspose.Cells for Node.js via C++

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

const AsposeCells = require("aspose.cells.node");
//Instantiating an Workbook object
var workbook = new AsposeCells.Workbook();
//Obtaining the reference of the newly added worksheet
var ws = workbook.getWorksheets().get(0);
var cells = ws.getCells();
//Setting the value to the cells
var cell = cells.get("A1");
cell.putValue("Fruit");
cell = cells.get("B1");
cell.putValue("Count");
cell = cells.get("A2");
cell.putValue("Apple");
cell = cells.get("A3");
cell.putValue("Mango");
cell = cells.get("A4");
cell.putValue("Blackberry");
cell = cells.get("A5");
cell.putValue("Cherry");
cell = cells.get("A6");
cell.putValue("Guava");
cell = cells.get("A7");
cell.putValue("Carambola");
cell = cells.get("A8");
cell.putValue("Banana");
cell = cells.get("B2");
cell.putValue(5);
cell = cells.get("B3");
cell.putValue(3);
cell = cells.get("B4");
cell.putValue(6);
cell = cells.get("B5");
cell.putValue(4);
cell = cells.get("B6");
cell.putValue(5);
cell = cells.get("B7");
cell.putValue(2);
cell = cells.get("B8");
cell.putValue(20);
//Adding a PivotTable to the worksheet
var i = ws.getPivotTables().add("=A1:B8", "D10", "PivotTable1");
//Accessing the instance of the newly added PivotTable
var pivotTable = ws.getPivotTables().get(i);
pivotTable.addFieldToArea(AsposeCells.PivotFieldType.Row, 0);
pivotTable.addFieldToArea(AsposeCells.PivotFieldType.Data, "Count");
pivotTable.getDataFields().get(0).setFunction(AsposeCells.ConsolidationFunction.Sum);
var field = pivotTable.getRowFields().get(0);
field.setIsAutoSort(true);
field.setIsAscendSort(false);
field.setAutoSortField(0);
//Add top10 filter
var index = pivotTable.getPivotFilters().add(0, AsposeCells.PivotFilterType.Count);
var filter = pivotTable.getPivotFilters().get(index);
filter.getAutoFilter().filterTop10(0, True, False, 5);
pivotTable.refreshData();
pivotTable.calculateData();
workbook.save("out.xlsx");