Clasificación de datos

Clasificación de datos en Microsoft Excel

Para ordenar datos en Microsoft Excel:

  1. SeleccioneDatos desde elTipo menú. Se muestra el cuadro de diálogo Ordenar.
  2. Seleccione una opción de clasificación.

Generalmente, la clasificación se realiza en una lista, definida como un grupo contiguo de datos donde los datos se muestran en columnas.

El cuadro de diálogo Ordenar en Microsoft Excel

todo:imagen_alternativa_texto

Clasificación de datos con Aspose.Cells

Aspose.Cells proporciona elclasificador de datos clase utilizada para ordenar datos en orden ascendente o descendente. La clase tiene algunos miembros importantes, por ejemplo, métodos comoestablecerClave1 … setKey2 yestablecerPedido1 … establecerPedido2Estos miembros se utilizan para definir claves ordenadas y especificar el orden de clasificación de las claves.

Debe definir claves y establecer el orden de clasificación antes de implementar la clasificación de datos. La clase proporciona latipo método utilizado para realizar la clasificación de datos en función de los datos de celda en una hoja de trabajo.

Éltipo método acepta los siguientes parámetros:

  • Cells, las celdas de la hoja de cálculo.
  • área de celda, el rango de celdas. Defina el área de la celda antes de aplicar la clasificación de datos.

Este ejemplo muestra cómo ordenar datos usando Aspose.Cells API. El ejemplo usa un archivo de plantilla “Book1.xls” y ordena datos por rango de datos (A1:B14) en la primera hoja de trabajo:

Este ejemplo utiliza el archivo de plantilla “Book1.xls” creado en Microsoft Excel.

Archivo de plantilla de Excel completo con datos

todo:imagen_alternativa_texto

Después de ejecutar el código a continuación, los datos se ordenan de manera adecuada, como puede ver en el archivo de salida de Excel.

Archivo de salida de Excel después de ordenar los datos

todo:imagen_alternativa_texto

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// The path to the documents directory.
String dataDir = Utils.getSharedDataDir(DataSorting.class) + "data/";
// Instantiate a new Workbook object.
Workbook workbook = new Workbook(dataDir + "book1.xls");
// Get the workbook datasorter object.
DataSorter sorter = workbook.getDataSorter();
// Set the first order for datasorter object.
sorter.setOrder1(SortOrder.DESCENDING);
// Define the first key.
sorter.setKey1(0);
// Set the second order for datasorter object.
sorter.setOrder2(SortOrder.ASCENDING);
// Define the second key.
sorter.setKey2(1);
// Sort data in the specified data range (CellArea range: A1:B14)
CellArea cellArea = new CellArea();
cellArea.StartRow = 0;
cellArea.StartColumn = 0;
cellArea.EndRow = 13;
cellArea.EndColumn = 1;
sorter.sort(workbook.getWorksheets().get(0).getCells(), cellArea);
// Save the excel file.
workbook.save(dataDir + "DataSorting_out.xls");
// Print message
System.out.println("Sorting Done Successfully");

Ordenar datos con color de fondo

Excel proporciona la función para ordenar los datos según el color de fondo. La misma característica se proporciona usando Aspose.Cells usandoclasificador de datos dóndeOrdenarPorTipo.CELL_COLOR se puede utilizar enañadirClave() para ordenar los datos según el color de fondo. Todas las celdas que contienen el color especificado en elañadirClave(), la función se coloca en la parte superior o inferior de acuerdo con la configuración de SortOrder y el orden del resto de las celdas no cambia en absoluto.

Los siguientes son los archivos de muestra que se pueden descargar para probar esta función:

muestraBackGroundFile.xlsx

ejemplo de salidaBackGroundFile.xlsx

Código de muestra

// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-Java
// Load the Excel file.
Workbook wb = new Workbook(srcDir + "sampleInlineCharts.xlsx");
// Access the sheet
Worksheet ws = wb.getWorksheets().get(0);
// Set the print area.
ws.getPageSetup().setPrintArea("D2:M20");
// Initialize HtmlSaveOptions
HtmlSaveOptions options = new HtmlSaveOptions();
// Set flag to export print area only
options.setExportPrintAreaOnly(true);
//Save to HTML format
wb.save(outDir + "outputInlineCharts.html",options);

Temas avanzados