Spécification d avertissement de tri lors du tri des données
Scénarios d’utilisation possibles
Considérez ces données textuelles : {11, 111, 22}. Ces données sont triées parce qu’en termes de texte, 111 vient avant 22. Mais si vous souhaitez trier ces données en tant que nombres et non en tant que texte, elles deviendront {11, 22, 111} car numériquement 111 vient après 22. L’API Aspose.Cells for Node.js via C++ offre la propriété {0} pour gérer cette problématique. Veuillez définir cette propriété true et vos données textuelles seront triées comme des données numériques. La capture d’écran suivante montre l’avertissement de tri affiché par Microsoft Excel lorsque des données textuelles semblant être numériques sont triées.
Code d’exemple
Le code d’exemple suivant illustre l’utilisation de la propriété DataSorter.setSortAsNumber comme expliqué précédemment. Veuillez consulter son fichier Excel d’exemple et son fichier Excel de sortie pour plus d’aide.
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
const AsposeCells = require("aspose.cells.node"); | |
//Create workbook. | |
var workbook = new AsposeCells.Workbook("sampleSortAsNumber.xlsx"); | |
//Access first worksheet. | |
var worksheet = workbook.getWorksheets().get(0); | |
//Create your cell area. | |
var ca = AsposeCells.CellArea.createCellArea("A1", "A20"); | |
//Create your sorter. | |
var sorter = workbook.getDataSorter(); | |
//Find the index, since we want to sort by column A, so we should know the index for sorter. | |
var idx = AsposeCells.CellsHelper.columnNameToIndex("A"); | |
//Add key in sorter, it will sort in Ascending order. | |
sorter.addKey(idx, AsposeCells.SortOrder.Ascending); | |
sorter.setSortAsNumber(true); | |
//Perform sort. | |
sorter.sort(worksheet.getCells(), ca); | |
//Save the output workbook. | |
workbook.save("outputSortAsNumber.xlsx"); |