Datensortierung
Sortieren von Daten in Microsoft Excel
So sortieren Sie Daten in Microsoft Excel:
- WählenDaten von demSortieren Speisekarte. Der Sortierdialog wird angezeigt.
- Wählen Sie eine Sortieroption aus.
Im Allgemeinen wird die Sortierung in einer Liste durchgeführt, die als zusammenhängende Gruppe von Daten definiert ist, in der die Daten in Spalten angezeigt werden.
Sortieren von Daten mit Aspose.Cells
Aspose.Cells bietet dieDatensortiererKlasse zum Sortieren von Daten in aufsteigender oder absteigender Reihenfolge. Die Klasse hat einige wichtige Mitglieder, zum Beispiel Eigenschaften wie Key1 … Key3 und Order1 … Order3. Diese Member werden verwendet, um sortierte Schlüssel zu definieren und die Schlüsselsortierreihenfolge anzugeben.
Sie müssen Schlüssel definieren und die Sortierreihenfolge festlegen, bevor Sie die Datensortierung implementieren. Die Klasse bietet dieSortierenMethode zum Sortieren von Daten basierend auf den Zellendaten in einem Arbeitsblatt.
DasSortierenDie Methode akzeptiert die folgenden Parameter:
- Aspose.Cells.Cells, die Zellen für das zugrunde liegende Arbeitsblatt.
- Aspose.Cells.CellArea, der Bereich der Zellen. Definieren Sie den Zellenbereich, bevor Sie die Datensortierung anwenden.
Dieses Beispiel verwendet die in Microsoft Excel erstellte Vorlagendatei „Book1.xls“. Nach dem Ausführen des folgenden Codes werden die Daten entsprechend sortiert.
// 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"); |
Sortieren von Daten mit Hintergrundfarbe
Excel bietet Funktionen zum Sortieren von Daten basierend auf der Hintergrundfarbe. Die gleiche Funktion wird mit Aspose.Cells unter Verwendung von DataSorter bereitgestellt, woSortOnType .CellColor kann in verwendet werdenAddKey() um Daten basierend auf der Hintergrundfarbe zu sortieren. Alle Zellen, die eine bestimmte Farbe in enthaltenAddKey(), -Funktion werden entsprechend der SortOrder-Einstellung oben oder unten platziert, und die Reihenfolge der restlichen Zellen wird überhaupt nicht geändert.
Im Folgenden finden Sie die Beispieldateien, die zum Testen dieser Funktion heruntergeladen werden können:
AusgabebeispielBackGroundFile.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"); |