Agrupar filas y crear subtotales

Agrupación de filas

Para agrupar un número específico de filas:

  1. Agregue el control Aspose.Cells.GridWeb a un formulario web.
  2. Accede a una hoja de trabajo.
  3. Seleccione el número deseado de celdas en filas.
  4. Agrupa las filas.

Cuando las filas están agrupadas, se muestra un botón para expandir/contraer en la parte superior de la línea de resumen de las filas. Puede cambiar la configuración de dirección. La propiedad WebWorksheet.IsSummaryRowBelow es una propiedad booleana. Establézcalo en falso (predeterminado) y la fila de resumen estará encima de las filas de detalles. Establézcalo en verdadero y la fila de resumen estará debajo de las filas de detalles. Haga clic en el botón expandir/contraer para expandir o contraer filas agrupadas.

El siguiente ejemplo agrupa las filas desde la 2.ª fila hasta la 10.ª fila.

Agrupación de filas

todo:imagen_alternativa_texto

 // Accessing the reference of the worksheet that is currently active

GridWorksheet sheet = GridWeb1.WorkSheets[GridWeb1.ActiveSheetIndex];

// Group the rows

sheet.Cells.GroupRows(1, 9);

Anidación de filas agrupadas

Puede crear niveles de organización mientras agrupa un conjunto de filas. Puede agrupar filas entre las filas agrupadas. El siguiente ejemplo muestra la anidación de filas agrupadas.

Agrupación de filas

todo:imagen_alternativa_texto

 // Accessing the reference of the worksheet that is currently active

GridWorksheet sheet = GridWeb1.WorkSheets[GridWeb1.ActiveSheetIndex];

// Group the rows

sheet.Cells.GroupRows(1, 9);

// Create nested group of rows

sheet.Cells.GroupRows(4, 6);

Proceso Interno: ¿Cómo Funciona el Control?

Cada fila de la hoja tiene un número de esquema. El valor predeterminado del número de esquema es cero. Cada vez que agrupa las filas, el número de esquema aumenta en 1. Puede obtener el número de esquema llamando al método GridWorksheet.Cells.GetRowOutlineLevel().

Desagrupar filas

Aspose.Cells.GridWeb le permite desagrupar filas agrupadas.

Para desagrupar un número específico de filas:

  1. Seleccione un número de celdas en las filas de la hoja de trabajo para desagrupar.
  2. Desagrupar las filas.

El siguiente ejemplo desagrupa las filas de la 2.ª fila a la 10.ª fila.

 // Accessing the reference of the worksheet that is currently active

GridWorksheet sheet = GridWeb1.WorkSheets[GridWeb1.ActiveSheetIndex];

// Ungroup the rows

sheet.Cells.UngroupRows(1, 9); 

Creación de subtotales

La característica de subtotal del control puede agrupar las filas en la hoja con una columna específica y calcular el resumen de las columnas. Aspose.Cells. GridWeb puede calcular automáticamente valores subtotales para una lista. Cuando implementa subtotales, el control delinea la lista para que pueda mostrar y ocultar las filas de detalles para cada subtotal. Antes de agregar subtotales, ordene el campo en el que desea subtotalizar. Para crear subtotales, use cualquier versión del método sobrecargado WebWorksheet.CreateSubtotal.

 public void CreateSubtotal

(

           int columnNameRowIndex,

           int dataRows,

           int groupByColumnIndex,

           SubtotalFunction subtotalFunction,

           int[]subtotalColumnIndexList

);

Lista de parámetros

No. Nombre del parámetro Descripción
1 columnNameRowIndex El índice de fila de la fila de nombre de columna.
2 filas de datos El número de las filas de datos.
3 groupByColumnIndex El índice de columna de la columna que se va a agrupar.
4 subtotalFunción La enumeración del tipo de función de subtotal.
5 subtotalColumnIndexList Los índices de columna que se subtotalizarán.

Lista de funciones resumidas

Hay varios tipos de funciones de resumen admitidas por la enumeración {[SubtotalFunction}}:

No. Nombre de la función Descripción
1 PROMEDIO Calcula el promedio de los valores.
2 CONTAR Cuenta los valores numéricos en las celdas.
3 CONTARA Cuenta los datos no numéricos en las celdas.
4 MÁX. Calcula el valor más grande.
5 MÍN. Calcula el valor más pequeño.
6 PRODUCTO Calcula el producto de los valores.
7 SUMA Calcula la suma de los valores.
El siguiente ejemplo genera los subtotales que calculan los valores no numéricos agrupados por la segunda columna en la hoja de cálculo.

subtotales

todo:imagen_alternativa_texto

 sheet.CreateSubtotal(0, sheet.Cells.MaxRow, 1, SubtotalFunction.COUNTA, new int[]{ 1, 2, 3, 4, 5 });

Eliminación de subtotales

Para eliminar un subtotal, use el método WebWorksheet.RemoveSubtotal. El siguiente ejemplo elimina los subtotales.

 // Accessing the reference of the worksheet that is currently active

GridWorksheet sheet = GridWeb1.WorkSheets[GridWeb1.ActiveSheetIndex];

//Remove the subtotals

sheet.RemoveSubtotal();

Acerca de la función SUBTOTALES

El control GridWeb utiliza la función de fórmula SUBTOTAL para calcular el valor del subtotal.

Sintaxis: SUBTOTAL(función_num, ref1, ref2, …)

function_num es un número que especifica el tipo de función utilizada en el cálculo del subtotal.

1 PROMEDIO
2 CONTAR
3 CONTARA
4 MÁX.
5 MÍN.
6 PRODUCTO
7 SUMA
ref1, ref2, son las áreas a subtotalizar. Si ref1, ref2, … contienen otras funciones de subtotal, las celdas a las que se hace referencia se ignoran para evitar cálculos duplicados.