Spécification d avertissement de tri lors du tri des données
Scénarios d’utilisation possibles
Veuillez prendre en compte ces données textuelles, c’est-à-dire {11, 111, 22}. Ces données textuelles sont triées car, en termes de texte, 111 vient avant 22. Mais, si vous souhaitez trier ces données non pas comme du texte mais comme des nombres, elles deviendront {11, 22, 111} car numériquement 111 vient après 22. Aspose.Cells pour Python via .NET fournit la propriété {0} pour résoudre ce problème. 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 qui ressemblent à des données numériques sont triées.
Code d’exemple
Le code d’exemple suivant illustre l’utilisation de la propriété DataSorter.sort_as_number comme expliqué précédemment. Veuillez consulter son fichier Excel d’exemple et son fichier Excel de sortie pour plus d’aide.
from aspose.cells import CellArea, CellsHelper, SortOrder, Workbook | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
# Create workbook. | |
workbook = Workbook(dataDir + "sampleSortAsNumber.xlsx") | |
# Access first worksheet. | |
worksheet = workbook.worksheets[0] | |
# Create your cell area. | |
ca = CellArea.create_cell_area("A1", "A20") | |
# Create your sorter. | |
sorter = workbook.data_sorter | |
# Find the index, since we want to sort by column A, so we should know the index for sorter. | |
idx = CellsHelper.column_name_to_index("A") | |
# Add key in sorter, it will sort in Ascending order. | |
sorter.add_key(idx, SortOrder.ASCENDING) | |
sorter.sort_as_number = True | |
# Perform sort. | |
sorter.sort(worksheet.cells, ca) | |
# Save the output workbook. | |
workbook.save(dataDir + "outputSortAsNumber.xlsx") |