Como evitar salgan botones en la hoja de excel y evitar espacios al exportar PDF

Un formulario que consta de un combobox que me carga las hojas y al eligir una hoja me exporta al PDF, la cual tengo un código que me ayudo el experto ANDY MACHIN, la cual consiste en exportar hojas a PDF, lo quiero modificar en el código es que eviten los botones que se le insertan en el excel al momento de exportar la hoja PDF, por ejemplo si tengo una cuadro de excel con su información y abajo del cuadro hay un boton que se llama formulario quiero que salga solo el cuadro y no el botón.

Y Cambien he visto e investigado algo de que un PDF se le quite los espacios al cuando se exporta la hoja y no quede muchos puntos en la hoja lo cual se lo trate de insertar en el código pero no me sale.

Este fue el codigo que evita salgan los espacios en la hoja.

 Archivo = Mid(ActiveWorkbook.Name, 7, (InStr(ActiveWorkbook.Name, ".") - 1))

Y este es el codigo que me ayudo el experto ANDY MACHIN.

Private Sub BtnPDF_Click()
Dim Hoja As Worksheet
Dim Libro As Workbook
Dim strName As String
Dim strPath As String
Dim strFile As String
Dim strPathFile As String
Dim myFile As Variant
On Error GoTo errHandler
Set Libro = ActiveWorkbook
Set Hoja = ActiveSheet
strPath = Libro.Path
If strPath = "" Then
  strPath = Application.DefaultFilePath
End If
strPath = strPath & "\"
'strName = Mid(Hoja.Name, 1, (InStr(Hoja.Name, ".") - 1))
strName = Replace(Hoja.Name, " ", "")
strName = Replace(strName, ".", "_")
strFile = strName & ".pdf"
strPathFile = strPath & strFile
myFile = Application.GetSaveAsFilename _
    (InitialFileName:=strPathFile, _
        FileFilter:="PDF Files (*.pdf), *.pdf", _
        Title:="Seleccione una carpeta y un nombre para Guardar")
If myFile <> "False" Then
    Hoja.ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=myFile, _
        Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, _
        openafterpublish:=True
    MsgBox "El archivo PDF ha sido creado y se encuentra en: " & vbCrLf & myFile, vbInformation, "Acción completada..."
End If
Exit Sub
errHandler:
    MsgBox "Ha ocurrido un error." & vbCr & "Numero: " & Err.Number & vbCr & "Descripcion: " & Err.Description, vbCritical, "Error al crear PDF..."
End Sub

1 respuesta

Respuesta
1

Brenda, los controles de formulario no aparecen en los PDF cuando los crea, asi que supongo que estas usando controles Activex que si salen.

Para evitarlo, solo tienes que ir a las propiedades del control y poner la propiedad PrintObject a False.

Así:

Estando en el modo de edición, Click derecho al botón y Propiedades.

Y luego esta es la propiedad que debes poner a False:

De esa forma le dices al control que no debe aparecer en el PDF

¡Gracias! 

Gracias por la aclaración experto ANDY MACHIN esa no la sabia y con el tema de los espacios que se genera en la parte de arriba de la hoja en una lectura me decía que con esto se evitaba.

Archivo = Mid(ActiveWorkbook.Name, 7, (InStr(ActiveWorkbook.Name, ".") - 1))

¿Espacios? ¿Me puedes mostrar una imagen?

Ese código nada tiene que ver con espacios en la hoja. Ese código lo que hace es eliminar un "." (punto) en el nombre del archivo.

Parece que es el margen de la hoja sobre el espacio de la parte de arriba del título, experto Andy Machin, 

esta es el pdf

 y esta es la hoja de excel

Ya pero eso no tiene mucho que ver con el código, esto es conocimiento basico de los programas de Office. Debes preparar el formato de la hoja, su ancho, margenes, etc. Exportar a PDF es como imprimir en la impresora, pero a un archivo digital.

Pones todo a 0 en los margenes, y se resuelve. Obviamente siempre quedara un espacio lógico.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas