¿Cómo crear un área de impresión variable en excel?

Apreciados expertos,

Tengo un problema que quisiera solucionar con su ayuda.

En un archivo excel tengo un pequeño programa que realiza informes para unos clientes, este programa consta de 3 Hojas, de las cuales se deben imprimir unicamente unas celdas (No toda la hoja). Para esto ya he encontrado un programa VBA que me ayuda a seleccionar el área de impresión de las hojas, el problema es que en una de las hojas, el área de impresión es variable.

Ejemplo: Si el cliente tiene 2 contratos, el archivo debe imprimir un informe de cada contrato, pero si el cliente tiene 5 contratos debe imprimir 5 informes.

Yo estaba utilizando el siguiente código, el cual me permitía según el numero de contratos, imprimir un área de impresión. El problema es que cuando se envían los informes en archivo .pdf a los clientes terminan siendo 3 archivos (Un archivo .pdf por cada hoja) y necesito que todo sea guardado en un solo archivo.

Sub Botón36_AlHacerClic()
ActiveSheet.Range("A1").Select
If ActiveCell.Value = 1 Then
Range("A1:I51").PrintOut
End If
If ActiveCell.Value = 2 Then
Range("A1:I102").PrintOut
End If
If ActiveCell.Value = 3 Then
Range("A1:I153").PrintOut
End If
If ActiveCell.Value = 4 Then
Range("A1:I204").PrintOut
End If
If ActiveCell.Value = 5 Then
Range("A1:I255").PrintOut
End If
End Sub

Ahora he encontrado el siguiente código y me funciona para seleccionar las áreas de impresión de cada hoja y lo mas importante es que me muestra la "Vista Preliminar" de lo que voy a imprimir, el problema es que no se como incluir el área de impresión que es variable.

Sub Imprimir_Informe()
Dim Wks As Worksheet
Set Wks = ActiveSheet
Worksheets("Portada").PageSetup.PrintArea = "A1:N46"
Worksheets("Informe Final").PageSetup.PrintArea = (Area de impresion variable)?????

Worksheets("Consolidado").PageSetup.PrintArea = "A67:AH173"
Sheets(Array("Portada", "Informe Final", "Consolidado")).Select
Application.Dialogs(xlDialogPrintPreview).Show
Wks.Select
End Sub

La Hoja que tiene el área de impresión variable es la que se llama "Informe Final".

No se si les sirvan estos códigos que estoy utilizando o sea mas conveniente un código diferente, realmente no soy muy bueno con la programación en excel. Espero que puedan ayudarme y si tienen alguna duda o no esta muy claro lo que necesito, no duden en escribirme.

De antemano les agradezco la ayuda que me puedan brindar.

Añade tu respuesta

Haz clic para o