Saltos de página condicionales (Microsoft Excel)
Excel es una herramienta útil para realizar un seguimiento de todo tipo de datos. Mucha gente lo usa en el trabajo para crear informes ad-hoc para diferentes departamentos o proyectos. Mientras trabaja con sus datos, es posible que se pregunte cómo puede insertar automáticamente saltos de página cuando cambia el contenido de una determinada columna. Por ejemplo, es posible que tenga una columna que contenga los nombres de los departamentos y que desee que cada departamento comience en una nueva página.
Esto es bastante fácil de hacer con la función de subtotales incorporada de Excel.
Todo lo que necesitas hacer es seguir estos pasos:
-
Asegúrese de que su tabla contenga etiquetas de columna. Por ejemplo, si la columna A contiene los nombres de los departamentos, la celda A1 podría contener una etiqueta como «Departamento». Asegúrese de que todas las columnas tengan etiquetas.
-
Ordene los datos en su tabla, usando la columna del departamento como clave.
-
Con cualquier celda dentro de la tabla aún seleccionada, elija Subtotales en el menú Datos. Excel muestra el cuadro de diálogo Subtotales.
-
Con la lista desplegable En cada cambio en, seleccione Departamento.
-
Usando la lista desplegable Usar función, seleccione Recuento.
-
Usando la lista Agregar subtotal a, seleccione el nombre de la columna donde desea que aparezca su subtotal.
-
Asegúrese de que la casilla de verificación Salto de página entre grupos esté seleccionada.
-
Haga clic en Aceptar. Excel agrega los subtotales y el recuento de páginas, como se indica.
Si, por alguna razón, no desea utilizar la función Subtotales, siempre puede escribir una macro que elimine todos los saltos de página en su hoja de trabajo y luego agregar nuevos saltos de página en los lugares apropiados. La siguiente macro funcionará:
Sub PageBreak() Dim CellRange As Range Dim TestCell As Range ActiveSheet.ResetAllPageBreaks Set CellRange = Selection For Each TestCell In CellRange If TestCell.Value <> TestCell.Offset(-1, 0).Value Then ActiveSheet.Rows(TestCell.Row).PageBreak = xlPageBreakManual End If Next TestCell End Sub
Para usar la macro, simplemente seleccione las celdas que desea usar como clave para hacer las divisiones, menos la celda superior. Por ejemplo, si los departamentos están en la columna A, filas 2 a 37, seleccionaría el rango en A3 a A37. Ejecute la macro, y los saltos de página antiguos se eliminarán y se agregarán nuevos.
Debe darse cuenta de que Excel tiene un límite cuando se trata de la cantidad de saltos de página manuales que se pueden usar en una hoja de trabajo. Según la base de conocimientos, ese límite es de alrededor de 1024 descansos. (El límite puede variar ligeramente en función de la versión de Excel que esté utilizando, pero está en ese punto). Aquí está la descripción oscura sobre el límite:
http://support.microsoft.com/kb/284916
El resultado de este límite es que si tiene bastantes saltos de página para insertar, la macro se bloqueará cuando se exceda el límite de saltos de página en la hoja de trabajo. El error dirá algo como «No se puede establecer la propiedad PageBreak».
_Nota: _
Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios ExcelTips), he preparado una página especial que incluye información útil.
link: / excelribbon-ExcelTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador]
.
ExcelTips es su fuente de formación rentable en Microsoft Excel.
Este consejo (2792) se aplica a Microsoft Excel 97, 2000, 2002 y 2003. Puede encontrar una versión de este consejo para la interfaz de cinta de Excel (Excel 2007 y posterior) aquí:
link: / excelribbon-Conditional_Page_Breaks [Saltos de página condicionales]
.