Ordenar datos en columna con lista de ordenación personalizada
Posibles escenarios de uso
Puede ordenar los datos en la columna usando una lista personalizada. Esto se puede hacer usandoDataSorter.AddKey (clave int, Orden de clasificación, Cadena customList)método. Sin embargo, este método solo funciona si los elementos de la lista personalizada no tienen comas dentro de ellos. Si tienen comas como “EE. UU., EE. UU.”, “China, CN”, etc., debe usar [DataSorter.AddKey Method (Int32, SortOrder,String[]))](https://reference. aspose.com/cells/net/aspose.cells.datasorter/addkey/methods/3). Aquí, el último parámetro no es String sino una matriz de cadenas.
Ordenar datos en columna con lista de ordenación personalizada
El siguiente código de muestra explica cómo usar [DataSorter.AddKey Method (Int32, SortOrder,String[]))](https://reference.aspose.com/cells/net/aspose.cells.datasorter/addkey /methods/3) método para ordenar datos con una lista de clasificación personalizada. Consulte el [archivo de Excel de muestra] (50528327.xlsx) utilizado en este código y el [archivo de Excel de salida] (50528328.xlsx) generado por él. La siguiente captura de pantalla muestra el efecto del código en el archivo de muestra de Excel durante la ejecución.
Código de muestra
// 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"); |