¿Cómo utilizar Excel VBA para generar archivos PDF?
Primero, cargue la referencia, como se muestra en la figura
Luego, configure los ajustes de impresión de Acrobat Distiller en la impresora (obligatorio; de lo contrario, la conversión saldrá mal).
Público ?Sub?MakePDF(ByVal?strPDFFileName?As?String)
Dim?strPSFileName?As?String
Dim?xlWorksheet?As?Worksheet
¿Dim? objPdfDistiller?As?PdfDistiller
strPSFileName = Left(strPDFFileName, InStrRev(strPDFFileName, "/")) & "tmpPostScript.ps"
Set?xlWorksheet = ActiveSheet
Llamar?xlWorksheet.PrintOut(copias:=1, vista previa:=False, ActivePrinter:="Acrobat Distiller", printtofile:=True, collate:=True, prtofilename:=strPSFileName)
Establecer? objPdfDistiller =?New?PdfDistiller
Llamar?objPdfDistiller.FileToPDF(strPSFileName, strPDFFileName, "")
Llamar?Kill(strPSFileName)
¿Fin?Sub