Ячейки сортировки Aspose на основе строки в качестве ключа в Java
У меня есть файл Excel с некоторыми столбцами, объединенными, как показано на снимке экрана, я хочу отсортировать верхние столбцы в порядке возрастания и их соответствующие значения, а затем я отсортирую COLUMN1, COLUMN2, Column3
Но прежде чем я хочу отсортировать ТОП заголовки столбцов, например: TOP COLUMN A
должен прийти первым и соответствующий Sub column
и значения этих шести столбцов TOP.
Область содержимого, которую я смог отсортировать, но как мне добиться сортировки для заголовков TOP Cols?
1 ответ
Поскольку вы хотите сортировать данные слева направо, вам нужно установить следующее свойство в true.
Workbook.getDataSorter().setSortLeftToRight(true);
Пожалуйста, смотрите следующий код. Сортирует данные слева направо по строке 3. Вы также можете добавить больше уровней.
Джава
// Load your Excel file
Workbook wb = new Workbook(dirPath + "sort.xlsx");
// For the first key, we want to sort by assending order
// And we want to sort by row not by column
// using SortLeftToRight property
wb.getDataSorter().setOrder1(SortOrder.ASCENDING);
wb.getDataSorter().setSortLeftToRight(true);
// Access first worksheet
Worksheet ws = wb.getWorksheets().get(0);
// Specify the range of cells
CellArea ca = CellArea.createCellArea("A1", "I7");
// We want to sort by row 3, since index starts from 0
// So 2 means 3
wb.getDataSorter().setKey1(2);
// Sort the workbook data
wb.getDataSorter().sort(ws.getCells(), ca);
// Save the output Excel file
wb.save(dirPath + "output.xlsx");
Примечание: я работаю в качестве разработчика евангелиста в Aspose