Скрытие сводной таблицы и сортировка данных
Contents
[
Hide
]
Скрытие сводной таблицы и сортировка данных
Aspose.Cells поддерживает скрытие и сортировку данных в сводной таблице. Следующий фрагмент кода демонстрирует эту функцию, сортируя столбец Score в порядке убывания, а затем скрывая строки с показателем менее 60.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java | |
// The path to the output directory. | |
String sourceDir = Utils.Get_SourceDirectory(); | |
String outputDir = Utils.Get_OutputDirectory(); | |
Workbook workbook = new Workbook(sourceDir + "PivotTableHideAndSortSample.xlsx"); | |
Worksheet worksheet = workbook.getWorksheets().get(0); | |
PivotTable pivotTable = worksheet.getPivotTables().get(0); | |
CellArea dataBodyRange = pivotTable.getDataBodyRange(); | |
int currentRow = 3; | |
int rowsUsed = dataBodyRange.EndRow; | |
// Sorting score in descending | |
PivotField field = pivotTable.getRowFields().get(0); | |
field.setAutoSort(true); | |
field.setAscendSort(false); | |
field.setAutoSortField(0); | |
pivotTable.refreshData(); | |
pivotTable.calculateData(); | |
// Hiding rows with score less than 60 | |
while (currentRow < rowsUsed) | |
{ | |
Cell cell = worksheet.getCells().get(currentRow, 1); | |
double score = (double) cell.getValue(); | |
if (score < 60) | |
{ | |
worksheet.getCells().hideRow(currentRow); | |
} | |
currentRow++; | |
} | |
pivotTable.refreshData(); | |
pivotTable.calculateData(); | |
// Saving the Excel file | |
workbook.save(outputDir + "PivotTableHideAndSort_out.xlsx"); |
Исходный и выходной файлы Excel, использованные во фрагменте кода, прилагаются для справки.