Necesito convertir hoja de excel a pdf y guardar según valor de una celda en mis documento.

He intentado algunas soluciones que dais a otros usuarios pero no me funcionan.

Sub guardar_pdf()
Dim folia As String
Worksheets("Factura CAT").Range ("B1:F43")
Selection.ExportAsFixedFormat Type:=xlTypePDF,_
Filename:="C:\"Range("E4") & Range("C9").Value
End Sub

1 Respuesta

Respuesta
2

Cambia la línea

Selection.ExportAsFixedFormat Type:=xlTypePDF,_
Filename:="C:\"Range("E4") & Range("C9").Value

Por esta

Selection.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:="C:\" & Range("E4") & Range("C9").Value

Revisa que antes del _ debe haber un espacio

Saludos. Dam

Si es lo que necesitas.

Gracias por tu rapidez, pero no funciona. Me dice que:

Worksheets("Factura CAT").Range ("B1:F43")

"se ha producido el error 438" ... el objeto no admite esta propiedad o método

Antes de guardar el archivo con un valor de celda, vamos a intentar guardarlo con un nombre fijo.

¿Sabes cómo grabar una macro?

Selecciona del menú: Herramientas / macro / Grabar nueva macro . En la siguiente ventana presiona Aceptar

En este momento ya se está grabando la macro, ahora, realiza los pasos para convertir la hoja en excel a pdf y guardar la hoja.

Ahora, vamos a detener la macro, Selecciona del menú: Herramientas / macro / Detener grabación.

Para ver el código que se generó entra a VBa, presiona Alt + F11, debes tener un nuevo módulo, presiona doble click en el módulo nuevo y verás el código.

Copia ese código y pégalo en esta pregunta, para adaptarle las celdas que quieres.

Gracias por tu ayuda, por fin he conseguido la macro que convierta mi hoja excel en pdf, pero siempre me lo guarda en Mis documentos y no consigo que lo haga en la capeta de destino llamada FACTURACIÓN. Mi macro actual es:

Sub Macro1() ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Filename:=Range("E4").Value & "_" & Range("C9").Value, Quality:=xlQualityStandard, _ IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True End Sub

Puedes ayudarme?

¿Qué tienes en E4 y que tienes en C9?

Saludos. Dam

En E4 tengo el número de factura y en C9 el nombre del cliente.

Tienes que poner la ruta donde quieres guardar el archivo, si no pones una ruta, te guarda el archivo en una carpeta por default.

Entonces podrías poner algo así:

Sub Macro1()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:="C:\FACTURACIÓN\" & Range("E4").Value & "_" & Range("C9").Value, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
End Sub

Pero tienes que poner la ruta completa donde quieres guardar el archivo, EJEMPLO:

“C:\Documents and Settings\DATOS\Mis documentos\docs\FACTURACION\”

Revisa que al final de la línea lleve la diagonal \

Saludos. Dam

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas