Сортировка данных

Сортировка данных в Microsoft Excel

Чтобы отсортировать данные в Microsoft Excel:

  1. ВыбиратьДанные отСортировать меню. Появится диалоговое окно Сортировка.
  2. Выберите вариант сортировки.

Как правило, сортировка выполняется в списке, определяемом как непрерывная группа данных, где данные отображаются в столбцах.

Диалоговое окно «Сортировка» в Microsoft Excel

дело:изображение_альтернативный_текст

Сортировка данных с Aspose.Cells

Aspose.Cells обеспечиваетсортировщик данных класс, используемый для сортировки данных в порядке возрастания или убывания. В классе есть несколько важных членов, например такие методы, какsetKey1 … setKey2 иsetOrder1 … setOrder2Эти элементы используются для определения отсортированных ключей и порядка сортировки ключей.

Вы должны определить ключи и установить порядок сортировки перед реализацией сортировки данных. Класс предоставляетСортировать метод, используемый для сортировки данных на основе данных ячеек на листе.

Сортировать принимает следующие параметры:

  • Cells, ячейки рабочего листа.
  • CellArea, диапазон ячеек. Определите область ячейки перед применением сортировки данных.

В этом примере показано, как сортировать данные с помощью Aspose.Cells API. В примере используется файл шаблона «Book1.xls» и данные сортируются по диапазону данных (A1:B14) на первом листе:

В этом примере используется файл шаблона «Book1.xls», созданный в Microsoft Excel.

Шаблон файла Excel с данными

дело:изображение_альтернативный_текст

После выполнения приведенного ниже кода данные сортируются соответствующим образом, как видно из выходного файла Excel.

Выходной файл Excel после сортировки данных

дело:изображение_альтернативный_текст

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// The path to the documents directory.
String dataDir = Utils.getSharedDataDir(DataSorting.class) + "data/";
// Instantiate a new Workbook object.
Workbook workbook = new Workbook(dataDir + "book1.xls");
// Get the workbook datasorter object.
DataSorter sorter = workbook.getDataSorter();
// Set the first order for datasorter object.
sorter.setOrder1(SortOrder.DESCENDING);
// Define the first key.
sorter.setKey1(0);
// Set the second order for datasorter object.
sorter.setOrder2(SortOrder.ASCENDING);
// Define the second key.
sorter.setKey2(1);
// Sort data in the specified data range (CellArea range: A1:B14)
CellArea cellArea = new CellArea();
cellArea.StartRow = 0;
cellArea.StartColumn = 0;
cellArea.EndRow = 13;
cellArea.EndColumn = 1;
sorter.sort(workbook.getWorksheets().get(0).getCells(), cellArea);
// Save the excel file.
workbook.save(dataDir + "DataSorting_out.xls");
// Print message
System.out.println("Sorting Done Successfully");

Сортировка данных по цвету фона

Excel предоставляет функцию сортировки данных по цвету фона. Та же функция предоставляется с использованием Aspose.Cells с использованиемсортировщик данных кудаСортировка по типу.CELL_COLOR можно использовать вдобавить ключ() для сортировки данных по цвету фона. Все ячейки, содержащие указанный цвет вдобавить ключ(), функция размещается сверху или снизу в соответствии с настройкой SortOrder, а порядок остальных ячеек вообще не меняется.

Ниже приведены примеры файлов, которые можно загрузить для тестирования этой функции:

образецBackGroundFile.xlsx

outputsampleBackGroundFile.xlsx

Образец кода

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// Load the Excel file.
Workbook wb = new Workbook(srcDir + "sampleInlineCharts.xlsx");
// Access the sheet
Worksheet ws = wb.getWorksheets().get(0);
// Set the print area.
ws.getPageSetup().setPrintArea("D2:M20");
// Initialize HtmlSaveOptions
HtmlSaveOptions options = new HtmlSaveOptions();
// Set flag to export print area only
options.setExportPrintAreaOnly(true);
//Save to HTML format
wb.save(outDir + "outputInlineCharts.html",options);

Предварительные темы