Macro para guardar 2 hojas de un libro con nombre de mes y año con extensión xls o pdf

Saludos:

Tengo un Formulario que me permite llenar recibos cada fin de mes en los formatos correspondientes para finalmente imprimirlos. Todo esto se realiza directo en el formulario el libro Excel está oculto y todas las hojas también están ocultas. Ahora con el Botón 4 GUARDAR, deseo guardar para consultas futuras solo las dos hojas de las 7 hojas del libro, la pregunta es:

¿Cómo hago para que 2 hojas de un libro Excel, La HojaC (Hoja2) y la Hoja INFORME y CONCILIACION(Hoja3), se Guardar en un salo archivo y que lleve como nombre los meses del año, puede ser en extensión xls o pdf?.

Nombre del libro excel: Gestor de cuentas

Ubicación del libro: Disco D:/Proyecto Cuentas

Nombre de las 2 hojas a grabar en un solo archivo (mes y año):

Octubre2015.xls o noviembre2015.pdf

NOV2015.xls o DIC2015.pdf

Ubicación a guardar: Disco D:/Proyecto cuentas/Archivados.

1 Respuesta

Respuesta
1

H o l a:

Vamos por la opción de guardar como PDF.

Pero ya no entendí, ¿quieres las 2 hojas en un solo PDF?

O quieres que cada hoja se guarde una en cada pdf, es decir, ¿2 PDF?

Y por último, de dónde se va a obtener el nombre del o de los archivos.

En tu ejemplo pusiste "noviembre2015.pdf", pero el dato noviembre y el dato 2015, ¿de dónde los voy a leer?

Perdón por no poner los detalles:

La opción de guardar como PDF son las 2 hojas en un solo PDF.

De donde se va a obtener el nombre de los archivos es de:

la HojaC(hoja2), celda Q2 (mes), celda S2(año), debido a que el mes y el año ubicado en estas celdas cambian cada nuevo mes. Por eso puse en el ejemplo "noviembre2015.pdf";"diciembre2015.pdf".

Agradezco su ayuda al respecto

H o l a:

Te anexo la macro

Sub GuardarPdf()
'Por.Dante Amor
    mes = Sheets("HojaC").[Q2]
    año = Sheets("HojaC").[S2]
    arch = mes & año & ".pdf"
    ruta = "D:\Proyecto cuentas\Archivados\"
    Sheets(Array("HojaC", "INFORME Y CONCILIACION")).Select
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
        Filename:=ruta & arch, Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
    Sheets("HojaC").Select
    MsgBox "Pdf guardado"
End Sub

Revisa en la macro que esté bien escrita la ruta:

ruta = "D:\Proyecto cuentas\Archivados\"

Hola: 

Ejecuto la macro y me sale un aviso que dice: se ha producido el error '1004' en tiempo de ejecución: error en el método select de la clase Sheets

Revisa el nombre de tus hojas en esta línea de la macro y escribe los nombres correctos en la macro:

"HojaC", "INFORME Y CONCILIACION"

Revisa si tus nombres de hoja tienen espacios antes o después del nombre

Disculpe,  ya arregle el error anterior,  pero sigo teniendo problemas con la macro cuando ejecuto la macro me da mensaje de error (ver imagen), no entiendo mucho este tema, así que agradecería su ayuda. Gracias

Qué tienes en Q2 y en S2

Es algún problema de tu carpeta o tu nombre de archivo o del nombre de tus hojas.

Solamente para hacer una prueba, ejecuta la siguiente macro:

Sub GuardarPdf()
'Por.Dante Amor
    mes = Sheets("HojaC").[Q2]
    año = Sheets("HojaC").[S2]
    arch = mes & año & ".pdf"
    arch = "archivo2.pdf"
    ruta = "D:\Proyecto cuentas\Archivados\"
    ruta = ThisWorkbook.Path & "\"
    Sheets(Array("HojaC", "INFORME Y CONCILIACION")).Select
    Sheets(Array(1, 2)).Select
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
        Filename:=ruta & arch, Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
    Sheets("HojaC").Select
    MsgBox "Pdf guardado"
End Sub

Te va a guardar 2 hojas como pdf en la misma carpeta en donde tienes tu archivo con la macro.

¿Dime el resultado y qué datos tienes?

En la imagen no veo las hojas, ¿estás ocultando las hojas? ¿O estás ocultando el libro de excel?

Si estás ocultando las hojas, no se pueden guardar. Dime cómo estás haciendo el proceso.

Tiene razón era ubicación de carpeta, el formulario que le muestro en imagen están con las hojas y el libro oculto y en ese estado no funciona la macro. Probé desocultando el libro y las hojas y allí si funciona la macro. ¿Cómo se haría para que funcione con el libro y las hojas ocultas?

Pues ya tienes la respuesta, muestra el libro y las hojas, genera el pdf y vuelves a ocultar el libro y las hojas.

Otra opción es que copies las hojas a otro libro, el nuevo libro deberá estar visible y las hojas visibles, generas el pdf y cierras el nuevo libro.

Si requieres ayuda con alguna de las opciones crea una nueva pregunta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas