Ordinamento dei dati

Ordinamento dei dati in Microsoft Excel

Per ordinare i dati in Microsoft Excel:

  1. SelezionareDati dalOrdinare menù. Verrà visualizzata la finestra di dialogo Ordina.
  2. Seleziona un’opzione di ordinamento.

In genere, l’ordinamento viene eseguito su un elenco, definito come un gruppo contiguo di dati in cui i dati vengono visualizzati in colonne.

Ordinamento dati con Aspose.Cells

Aspose.Cells fornisce ilDataSorterclasse utilizzata per ordinare i dati in ordine crescente o decrescente. La classe ha alcuni membri importanti, ad esempio proprietà come Key1 … Key3 e Order1 … Order3. Questi membri vengono utilizzati per definire le chiavi ordinate e specificare l’ordinamento delle chiavi.

È necessario definire le chiavi e impostare l’ordinamento prima di implementare l’ordinamento dei dati. La classe fornisce ilOrdinaremetodo utilizzato per eseguire l’ordinamento dei dati in base ai dati della cella in un foglio di lavoro.

IlOrdinaremetodo accetta i seguenti parametri:

Questo esempio utilizza il file modello “Book1.xls” creato in Microsoft Excel. Dopo aver eseguito il codice seguente, i dati vengono ordinati in modo appropriato.

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// The path to the documents directory.
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
// Instantiate a new Workbook object.
// Load a template file.
Workbook workbook = new Workbook(dataDir + "book1.xls");
// Get the workbook datasorter object.
DataSorter sorter = workbook.DataSorter;
// Set the first order for datasorter object.
sorter.Order1 = Aspose.Cells.SortOrder.Descending;
// Define the first key.
sorter.Key1 = 0;
// Set the second order for datasorter object.
sorter.Order2 = Aspose.Cells.SortOrder.Ascending;
// Define the second key.
sorter.Key2 = 1;
// Create a cells area (range).
CellArea ca = new CellArea();
// Specify the start row index.
ca.StartRow = 0;
// Specify the start column index.
ca.StartColumn = 0;
// Specify the last row index.
ca.EndRow = 13;
// Specify the last column index.
ca.EndColumn = 1;
// Sort data in the specified data range (A1:B14)
sorter.Sort(workbook.Worksheets[0].Cells, ca);
// Save the excel file.
workbook.Save(dataDir + "output.out.xls");

Ordinamento dei dati con il colore di sfondo

Excel fornisce funzionalità per ordinare i dati in base al colore di sfondo. La stessa funzionalità viene fornita utilizzando Aspose.Cells utilizzando DataSorter whereOrdinaSuTipo .CellColor può essere utilizzato inAggiungichiave() per ordinare i dati in base al colore di sfondo. Tutte le celle che contengono il colore specificato nel fileAggiungichiave(), la funzione viene posizionata in alto o in basso in base all’impostazione SortOrder e l’ordine del resto delle celle non viene modificato affatto.

Di seguito sono riportati i file di esempio che possono essere scaricati per testare questa funzione:

sampleBackGroundFile.xlsx

outputsampleBackGroundFile.xlsx

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET
// Create a workbook object and load template file
Workbook workbook = new Workbook(sourceDir + "CellsNet46500.xlsx");
// Instantiate data sorter object
DataSorter sorter = workbook.DataSorter;
// Add key for second column for red color
sorter.AddKey(1, SortOnType.CellColor, SortOrder.Descending, Color.Red);
// Sort the data based on the key
sorter.Sort(workbook.Worksheets[0].Cells, CellArea.CreateCellArea("A2", "C6"));
// Save the output file
workbook.Save(outputDir + "outputSortData_CustomSortList.xlsx");

Argomenti avanzati