在包含自定义排序列表的列中排序数据
可能的使用场景
您可以使用自定义列表对列中的数据进行排序。可以使用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文件的影响。
示例代码
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") |