Ordenar datos en una columna con lista de orden personalizado

Escenarios de uso posibles

Puedes ordenar datos en la columna usando una lista personalizada. Esto se puede hacer utilizando el método DataSorter.add_key(key, order, custom_list). Sin embargo, este método solo funciona si los elementos en la lista personalizada no tienen comas en su interior. Si tienen comas como “USA,US”, “China,CN” etc., entonces debes usar el método DataSorter.add_key(key, order, custom_list). Aquí, el último parámetro no es un String sino un Array de Strings.

Ordenar datos en una columna con lista de orden personalizado

El siguiente código de ejemplo explica cómo usar el método DataSorter.add_key(key, order, custom_list) para ordenar datos con lista de ordenación personalizada. Consulta el archivo de Excel de muestra utilizado en este código y el archivo de Excel de salida generado por él. La siguiente captura de pantalla muestra el efecto del código en el archivo de Excel de muestra al ejecutarse.

todo:image_alt_text

Código de muestra

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")