Tengo una macro muy simple que guarda mi archivo de excel como pdf, el problema es que me lo guarda

Tengo una macro muy simple que guarda mi archivo de excel como pdf, el problema es que me lo guarda en "mis documentos" y quiero que me lo guarde en la carpeta con el nombre según la celda A15, dejo aquí el macro ojala me puedan ayudar
Sub savepdf()
'
' savepdf Macro
'
Sheets("sales quote").Select
Range("A1:G44").Select
Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Range("A6").Value, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
MsgBox "The file was saved in PDF format", vbInformation
'
End Sub

1 respuesta

Respuesta
2

Entonces supongo que en la celda A15 tienes escrito el path completo de esa carpeta incluida la contrabarra del final, si fuera así, la macro queda así:

(Por lo que veo en la celda A6 está el nombre del archivo)

Sub savepdf()
'
' savepdf Macro
'
Sheets("sales quote").Select
Range("A1:G44").Select
Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:=range("a15").value & Range("A6").Value, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
MsgBox "The file was saved in PDF format", vbInformation
'
End Sub

recuerda finalizar la consulta

y donde tengo que escribir la ruta de la carpeta?

gracias por contestar a mi pregunta, no se si me explique bien en la primera ocasión pero lo que quiero es que la macro me guarde el archivo con el nombre de "A6" y en la carpeta correspondiente que la va a determinar "A15", ejemplo: si en A15 dice "Mauricio", quiero que el archivo me lo guarde en : \\server\sales dept\mauricio. si en lugar de mauricio es maría que lo guarde en \\server\sales dept\maría

Pues con esa información dejaríamos la macro así:

Sub savepdf()
'
' savepdf Macro
ruta = "\\server\sales dept\"&range("a15").value & "\"
Sheets("sales quote").Select
Range("A1:G44").Select
Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ruta & Range("A6").Value, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
MsgBox "The file was saved in PDF format", vbInformation
'
End Sub

muchas gracias luis funciono perfectamente, me sacaste de una bronca que tenia como un mes tratando de resolver, una ultima duda: si quiero que haga lo mismo pero que en lugar de guardarlo en pdf lo guarde en excel?

Pero... ¿entonces ahora quieres guardar como archivo excel un determinado rango?

como archivo de excel el documento completo, es un formato para hacer cotizaciones y lo tengo en una carpeta para que todos los usuarios de la red puedan accesar a el pero lo tengo como solo lectura asi que nada más permite "guardar como", quiero que al hacer click en un botón se guarde como el nombre de A6 y en la carpeta \server\sales dept\A15, igual que como lo hicimos para pdf pero ahora que se guarde en excel

gracias de antemano

Sub savepdf()
'
' savepdf Macro
ruta = "\\server\sales dept\"&range("a15").value & "\"
Sheets("sales quote").Select
Range("A1:G44").Select
activeworkbook.saveas Filename:=ruta & Range("A6").Value
MsgBox "The file was saved in PDF format", vbInformation
End Sub

Luis Mondelo de verdad agradezco tu ayuda, si hubiera 10 estrellas las pondría, respuestas rápidas, claras y fáciles, de verdad gracias y que tengas buen dia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas