Guardar objetos de Excel como PDF

馃敟 Guardar como PDF es una pregunta habitual que me han hecho.

馃憠 Pero nos vamos m谩s all谩, VAMOS A GUARDAR TODO como PDF.

馃挭 TODO! Archivos, Hojas, Selecci贸n de celdas, un Rango y Tablas en Excel.

馃く Te ense帽o a hacerlo de manera manual y con Macros! Usando el m茅todo ExportAsFixedFormat

Ver video Guardar Archivo, hoja, selecci贸n, rango y tabla como PDF

Suscr铆bete al canal de EXCELeINFO en YouTube para aprender m谩s de Excel y macros.

C贸mo lo hacemos

Vamos a guardar todos los elementos de Excel como PDF, tanto de manera manual como usando macros.

C贸digo VBA de la macro

Option Explicit
'Mi canal de YouTube | youtube.com/user/sergioacamposh
'Mi Sitio | exceleinfo.com
'Descarga mi add-in | addin.exceleinfo.com
'Obt茅n la Certificaci贸n Excel Expert | exceleinfo.com/certificacion-mos

Sub PDF_Archivo()
Dim Ruta As String
Dim NombreArchivo As String

With Application.FileDialog(msoFileDialogFolderPicker)
    .InitialFileName = Application.DefaultFilePath & " \ "
    .Title = "EXCELeINFO - Seleccionar carpeta"
    .Show
    If .SelectedItems.Count = 0 Then
    Else
        Ruta = .SelectedItems(1)
           
            NombreArchivo = ActiveWorkbook.Name
           
            ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
            Ruta & "\" & NombreArchivo & ".pdf", OpenAfterPublish:=False
        
    End If
End With

End Sub

Sub PDF_Hoja()
Dim Ruta As String
Dim NombreHoja As String

With Application.FileDialog(msoFileDialogFolderPicker)
    .InitialFileName = Application.DefaultFilePath & " \ "
    .Title = "EXCELeINFO - Seleccionar carpeta"
    .Show
    If .SelectedItems.Count = 0 Then
    Else
        Ruta = .SelectedItems(1)
           
            NombreHoja = ActiveSheet.Name
           
            ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
            Ruta & "\" & NombreHoja & ".pdf", OpenAfterPublish:=False
        
    End If
End With

End Sub

Sub PDF_Todas_Hojas()
Dim Ruta As String
Dim Hoja As Worksheet

With Application.FileDialog(msoFileDialogFolderPicker)
    .InitialFileName = Application.DefaultFilePath & " \ "
    .Title = "EXCELeINFO - Seleccionar carpeta"
    .Show
    If .SelectedItems.Count = 0 Then
    Else
        Ruta = .SelectedItems(1)
           
            For Each Hoja In ThisWorkbook.Sheets
                 
                 Hoja.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
                 Ruta & "\" & Hoja.Name & ".pdf", OpenAfterPublish:=False
            
            Next Hoja
        
    End If
End With

End Sub

Sub PDF_Rango()
Dim Ruta As String
Dim NombreRango As String
Dim MiRango As Range

With Application.FileDialog(msoFileDialogFolderPicker)
    .InitialFileName = Application.DefaultFilePath & " \ "
    .Title = "EXCELeINFO - Seleccionar carpeta"
    .Show
    If .SelectedItems.Count = 0 Then
    Else
        Ruta = .SelectedItems(1)
           
            NombreRango = "Rango"
            Set MiRango = Sheets("Rango").Range("A3:F12")
         
            MiRango.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
            Ruta & "\" & NombreRango & ".pdf", OpenAfterPublish:=False
        
    End If
End With

End Sub

Sub PDF_Selecci贸n()
Dim Ruta As String
Dim NombreSelecci贸n As String

With Application.FileDialog(msoFileDialogFolderPicker)
    .InitialFileName = Application.DefaultFilePath & " \ "
    .Title = "EXCELeINFO - Seleccionar carpeta"
    .Show
    If .SelectedItems.Count = 0 Then
    Else
        Ruta = .SelectedItems(1)
           
            NombreSelecci贸n = "Selecci贸n"
           
            Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
            Ruta & "\" & NombreSelecci贸n & ".pdf", OpenAfterPublish:=False
        
    End If
End With

End Sub

Sub PDF_Tabla()
Dim Ruta As String
Dim MiTabla As Object

With Application.FileDialog(msoFileDialogFolderPicker)
    .InitialFileName = Application.DefaultFilePath & " \ "
    .Title = "EXCELeINFO - Seleccionar carpeta"
    .Show
    If .SelectedItems.Count = 0 Then
    Else
        Ruta = .SelectedItems(1)
         
            Set MiTabla = ActiveWorkbook.Sheets("Tabla").ListObjects("Tabla1")
         
            MiTabla.Range.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
            Ruta & "\" & MiTabla.Name & ".pdf", OpenAfterPublish:=False
        
    End If
End With

End Sub

Descarga el archivo de ejemplo

Guardar como PDF Objetos del archivo – EXCELeINFO.zip

猸 Si te gust贸 este tutorial, por favor reg铆strate en nuestra Lista de correo y Suscr铆bete a nuestro canal de YouTube para que est茅s siempre enterado de lo nuevo que publicamos.

You may also like...

1 Response

  1. JoaoM says:

    Buenos d铆as. Sin tener alguna aplicaci贸n de terceros instalada y ocup谩ndote memoria y espacio, ya Excel o Word te guarda en pdf una sola hoja o fracci贸n.

Leave a Reply

Your email address will not be published. Required fields are marked *

%d bloggers like this: