Ejercicios con el Evento Workbook BeforePrint de VBA
Este Evento de VBA se va ejecutar antes de que se imprima el libro o cualquiera de sus partes. Recuerda para que pueda ocurrir primero tenemos que presionar el botón imprimir en Excel.
Evento Workbook BeforePrint
Este evento tiene como parámetro opcional/obligatorio el Cancel
Nombre | Opcional / Obligatorio | Tipo de Dato | Descripción |
Cancel | Obligatorio | Boolean | Si Cancel=False entonces se imprimirá el libro. Si se establece el Valor Cancel= True entonces se pasará a imprimir el libro. |
Realizar una copia de toda la hoja cuando se imprima
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Sheets("Examen").Copy After:=Sheets(Sheets.Count)
Total=Sheets.Count+1
ActiveSheet.Name ="Backup" & Total
End Sub
Sheets("Examen").Copy After:=Sheets(Sheets.Count)
En la primera Línea vamos a observar este código. Lo primero que realiza es Copiar la Hoja Examen Sheets(«Examen»).Copy después tenemos After:=Sheets(Sheets.Count) Aquí nos pega después de la última hoja, o sea a la derecha de todo, con el mismo nombre, pero con un número mayor y diferente.
Ahora Para cambiar de nombre y poner un número que siempre aumente hacemos lo siguiente:
Total=Sheets.Count+1 este código nos va devolver un número mayor a todo, ahora para concatenar la palabra «Backup» hacemos lo siguiente. Para para cambiar el nombre de la hoja activa más el número Total.
ActiveSheet.Name =»Backup» & Total
Guardar documento al Imprimir
Private Sub Workbook_BeforePrint(Cancel As Boolean)
ThisWorkbook.Save
End Sub
Para poder guardar un documento antes de imprimir un Excel tenemos que acceder al evento BeforePrint del Workbook aquí solo tenemos que poner el método «Save» que significa guardar.
ThisWorkbook.Save
Crea un pie de página antes de imprimir un libro de trabajo
Private Sub Workbook_BeforePrint(Cancel As Boolean)
ActiveSheet.PageSetup.LeftFooter = ActiveWorkbook.FullName
End Sub
Nota: El objeto PageSetup contiene todos los atributos de configuración de página (pie de página izquierdo, margen inferior, tamaño de papel, margen izquierdo, etc.) como propiedades.
Tendremos el siguiente resultado:
Responses