Guardar word y generar un pdf

Como guardar des de excel un word y al mismo tiempo en pdf ya que en el código que manejo si hace lo que requiero pero al tratar de guardarlo como pdf me sale error me pueden ayudar

Sub archivo()hu = ActiveWorkbook.Path 'saco la direcion de los archivosSet objw = CreateObject("Word.Application") 'abro el archivo de wordWith objw.Documents.Open hu & "\Word cartas.docx".Visible = TrueEnd With'asigno los valores a las bariables para remplazar en el word posteriormentebus = Worksheets("carta").Range("a2").Valuedat = Worksheets("carta").Range("c1").Value & " " & Worksheets("carta").Range("c2").ValueWith objw.Selection.Find            .Text = bus 'busca el texto de datos            .Replacement.Text = dat 'reemplaza por el texto            .Execute Replace:=2 'la variable en dos es para reemplazar todos los valores     End With' guardo el word con un nuevo nombreobjw.ActiveDocument.SaveAs hu & "\" & "ARCHIVO.docx"'en esta linea que sigue quiero que el word que se guardo se guarde ahora como pdf y sale errorobjw.Documents.ExportAsFixedFormat OutputFileName:= _ActiveDocument.Path & "\" & ActiveDocument.Name & ".pdf", ExportFormat:= _wdExportFormatPDF, OpenAfterExport:=False, OptimizeFor:= _wdExportOptimizeForPrint, Range:=wdExportAllDocument, _Item:=wdExportDocumentContent, IncludeDocProps:=True, KeepIRM:=True, _CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True, _BitmapMissingFonts:=True, UseISO19005_1:=Falseobjw.Quit TrueSet objw = NothingEnd Sub

2 respuestas

Respuesta
1

Te anexo la macro actualizada

Sub archivo()
    hu = ActiveWorkbook.Path
    'saco la direcion de los archivos
    Set objw = CreateObject("Word.Application")
    'abro el archivo de word
    objw.Documents.Open hu & "\Word cartas.docx", , True
    objw.Visible = True
    'asigno los valores a las bariables para remplazar en el word posteriormente
    bus = Worksheets("carta").Range("a2").Value
    dat = Worksheets("carta").Range("c1").Value & " " & Worksheets("carta").Range("c2").Value
    With objw.Selection.Find
        .Text = bus 'busca el texto de datos
        .Replacement.Text = dat 'reemplaza por el texto
        .Execute Replace:=2 'la variable en dos es para reemplazar todos los valores
    End With
    ' guardo el word con un nuevo nombre
    objw.ActiveDocument.SaveAs hu & "\" & "ARCHIVO.docx"
    '
    'Act.Por.Dante Amor
    nombre = hu & "\" & "ARCHIVO.pdf"
    pdf = objw.ActiveDocument.ExportAsFixedFormat( _
        Nombre, 17, False, 0, 0,,, 0, False, True, 1)
    '
    Objw. Quit
End Sub

Saludos.Dante Amor

Si es lo que necesitas.

Respuesta

creo que podría hacerse a través del programa/compemento "Multisave" (Writer/Word/.Pdf)

http://blog.open-office.es/index.php/extensiones/2012/04/10/multisave-guarda-a-la-vez-en-formato-ms-office-pdf-y-openoffice-libreoffice 

También se puede realizar el salvado múltiple y además enviar por correo automáticamente con este otro complemento, "Multidiff".

http://extensions.libreoffice.org/extension-center/multidiff 

Tambien te puede intersar

http://www.wondershare.es/pdf/excel-2003-to-pdf.html 

https://es.answers.yahoo.com/question/index?qid=20121027135352AAGOh4M 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas