Сортировка данных в столбце с пользовательским списком сортировки

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

Вы можете сортировать данные в столбце с помощью пользовательского списка. Это можно сделать с помощьюDataSorter.AddKey (ключ int, порядок SortOrder, String customList)метод. Однако этот метод работает только в том случае, если элементы в пользовательском списке не имеют внутри запятых. Если в них есть запятые, такие как «США, США», «Китай, Китай» и т. д., вы должны использовать [DataSorter.AddKey Method (Int32, SortOrder,String[]))](https://reference. aspose.com/cells/net/aspose.cells.datasorter/addkey/methods/3). Здесь последний параметр — это не строка, а массив строк.

Сортировка данных в столбце с пользовательским списком сортировки

В следующем примере кода объясняется, как использовать [метод DataSorter.AddKey (Int32, SortOrder,String[]))](https://reference.aspose.com/cells/net/aspose.cells.datasorter/addkey /methods/3) метод сортировки данных с помощью пользовательского списка сортировки. См. [пример файла Excel] (50528327.xlsx), используемый в этом коде, и [выходной файл Excel] (50528328.xlsx), созданный им. На следующем снимке экрана показано влияние кода на образец файла Excel при выполнении.

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

Образец кода

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
//Load the source Excel file
Workbook wb = new Workbook(sourceDir + "sampleSortData_CustomSortList.xlsx");
//Access first worksheet
Worksheet ws = wb.Worksheets[0];
//Specify cell area - sort from A1 to A40
CellArea ca = CellArea.CreateCellArea("A1", "A40");
//Create Custom Sort list
string[] customSortList = new string[] { "USA,US", "Brazil,BR", "China,CN", "Russia,RU", "Canada,CA" };
//Add Key for Column A, Sort it in Ascending Order with Custom Sort List
wb.DataSorter.AddKey(0, SortOrder.Ascending, customSortList);
wb.DataSorter.Sort(ws.Cells, ca);
//Save the output Excel file
wb.Save(outputDir + "outputSortData_CustomSortList.xlsx");