Datasortering

Sortera data i Microsoft Excel

Så här sorterar du data i Microsoft Excel:

  1. VäljData frånSortera meny. Dialogrutan Sortera kommer att visas.
  2. Välj ett sorteringsalternativ.

I allmänhet utförs sortering på en lista - definierad som en sammanhängande grupp av data där data visas i kolumner.

Sortera data med Aspose.Cells

Aspose.Cells tillhandahållerDataSorterklass som används för att sortera data i stigande eller fallande ordning. Klassen har några viktiga medlemmar, till exempel egenskaper som Key1 … Key3 och Order1 … Order3. Dessa medlemmar används för att definiera sorterade nycklar och specificera nyckelsorteringsordningen.

Du måste definiera nycklar och ställa in sorteringsordningen innan du implementerar datasortering. Klassen tillhandahållerSorterametod som används för att utföra datasortering baserat på celldata i ett kalkylblad.

DeSorterametoden accepterar följande parametrar:

Det här exemplet använder mallfilen “Book1.xls” skapad i Microsoft Excel. Efter att ha kört koden nedan sorteras data på lämpligt sätt.

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

Sortera data med bakgrundsfärg

Excel tillhandahåller funktioner för att sortera data baserat på bakgrundsfärgen. Samma funktion tillhandahålls med Aspose.Cells med DataSorter därSortOnType .CellColor kan användas iAddKey() för att sortera data baserat på bakgrundsfärgen. Alla celler som innehåller specificerad färg iAddKey(), funktionen placeras på toppen eller botten enligt SortOrder-inställningen och ordningen på resten av cellerna ändras inte alls.

Följande är exempelfilerna som kan laddas ner för att testa den här funktionen:

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

Förhandsämnen