在包含自定义排序列表的列中排序数据

可能的使用场景

您可以使用自定义列表对列中的数据进行排序。可以使用DataSorter.add_key(key, order, custom_list)方法来实现。但是,仅当自定义列表中的项目不含有逗号时,此方法才可用。如果它们包含逗号,比如"USA,US",“China,CN"等,那么您必须使用DataSorter.add_key(key, order, custom_list)方法。在这里,最后一个参数不是字符串,而是字符串数组。

使用自定义排序列表对列中的数据进行排序

下面的示例代码解释了如何使用DataSorter.add_key(key, order, custom_list)方法根据自定义排序列表对数据进行排序。请查看此代码中使用的示例Excel文件以及其生成的输出Excel文件。以下屏幕截图显示了在执行此代码后对示例Excel文件的影响。

todo:image_alt_text

示例代码

from aspose.cells import CellArea, SortOrder, Workbook
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET
# Load the source Excel file
wb = Workbook(sourceDir + "sampleSortData_CustomSortList.xlsx")
# Access first worksheet
ws = wb.worksheets[0]
# Specify cell area - sort from A1 to A40
ca = CellArea.create_cell_area("A1", "A40")
# Create Custom Sort list
customSortList = ["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.data_sorter.add_key(0, SortOrder.ASCENDING, customSortList)
wb.data_sorter.sort(ws.cells, ca)
# Save the output Excel file
wb.save(outputDir + "outputSortData_CustomSortList.xlsx")