Imprimir en pdf varias hojas excel

No tengo mucha experiencia en programación he ido ajustando a mis necesidades muchos de los códigos que encuentro en esta página, dicho esto:

Tengo un botón que me da las hojas de mi libro para seleccionar y posterior imprimir (yo tengo impresora pdf como predeterminada) lo encontré en este mismo foro hecho por Dante Amor

Lo que quiero hacer con este es que no me imprima por separado mis archivos sino que pueda enviarlos todos para poder guardar 1 solo archivo al final(en este caso pdf), no se si sea posible con esto o tengo que cambiar a otro tipo de código.

Private Sub CommandButton1_Click()
'Por.Dante Amor
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) Then
h = ListBox1.List(i)
Sheets(h).PrintOut Copies:=1, Collate:=True
End If
Next
End Sub
Private Sub UserForm_Activate()
'Por.Dante Amor
ListBox1.MultiSelect = 1
ListBox1.ListStyle = 1
For Each h In Sheets
ListBox1.AddItem h.Name
Next
End Sub

1 respuesta

Respuesta
2

Hol.a

Para que "imprima" todas las hojas de tu archivo en un solo *.pdf basta usar esto:

ActiveWorkbook.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False

Tú en tu botón tienes más código que "imprime" según la selección, quizá te convenga colocar lo que te pongo en otro botón.

Abraham Valencia

PD1: Lo otro es que en tu "ListBox" agregues una opción aparte tipo "todas las hojas" y luego en tu mismo botón si está seleccionada se "imprima" todo el libro

PD2: No olvides que Excel tiene un método para exportar en *.pdf sin necesidad de usar una impresora virtual, dicho método es un complemento en Excel 2007 y desde Excel 2010 está integrado a dicho programa.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas