Добавить фильтр в сводной таблице

Возможные сценарии использования

Когда создаете сводную таблицу с известными данными и хотите применить фильтр, изучите и используйте фильтр. Он помогает эффективно отфильтровать нужные данные. Используя API Aspose.Cells for Node.js via C++, вы можете добавлять фильтры для полей в сводных таблицах.

Добавление фильтра в сводную таблицу с помощью Aspose.Cells for Node.js via C++

Пожалуйста, ознакомьтесь с следующим образцовым кодом. Он устанавливает данные и создает сводную таблицу на их основе. Затем добавьте фильтр на поля строк сводной таблицы. Наконец, сохраните книгу в формате output XLSX. После выполнения примера кода книга Excel с фильтром top10 добавляется в рабочий лист.

Образец кода

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");