Masquer et trier les données du tableau croisé dynamique
Masquer et trier les données du tableau croisé dynamique
Aspose.Cells for Node.js via C++ prend en charge la dissimulation et le tri des données dans le tableau croisé dynamique. Le code suivant illustre cette fonctionnalité en triant la colonne Score en ordre décroissant puis en masquant les lignes avec un score inférieur à 60.
const AsposeCells = require("aspose.cells.node"); | |
//directories | |
var sourceDir = RunExamples.Get_SourceDirectory(); | |
var outputDir = RunExamples.Get_OutputDirectory(); | |
var workbook = new AsposeCells.Workbook(sourceDir + "PivotTableHideAndSortSample.xlsx"); | |
var worksheet = workbook.getWorksheets().get(0); | |
var pivotTable = worksheet.getPivotTables().get(0); | |
var dataBodyRange = pivotTable.getDataBodyRange(); | |
var currentRow = 3; | |
var rowsUsed = dataBodyRange.endRow; | |
//Sorting score in descending | |
var field = pivotTable.getRowFields().get(0); | |
field.setIsAutoSort(true); | |
field.setIsAscendSort(false); | |
field.setAutoSortField(0); | |
pivotTable.refreshData(); | |
pivotTable.calculateData(); | |
//Hiding rows with score less than 60 | |
while (currentRow < rowsUsed) | |
{ | |
var cell = worksheet.getCells().get(currentRow, 1); | |
var score = cell.getFloatValue(); | |
if (score < 60) | |
{ | |
worksheet.getCells().hideRow(currentRow); | |
} | |
currentRow = currentRow + 1; | |
} | |
pivotTable.refreshData(); | |
pivotTable.calculateData(); | |
//Saving the Excel file | |
workbook.save(outputDir + "PivotTableHideAndSort_out.xlsx"); |
Les fichiers Excel source et de sortie utilisés dans l’extrait de code sont joints à titre de référence.