Riga di comando batch di Windows 7 da salvare come file .pdf per il file .docx di word 2013


10

Mi piacerebbe avere il modo più veloce per esportare il mio file .docx di report in .pdf e distribuirlo ad altri ogni volta che ho una nuova versione aggiornata.

Sto cercando un approccio da riga di comando che automatizzi i seguenti passaggi che devo fare manualmente usando il mouse finora:

File -> Save as -> Browse for location

Quali sono le mie opzioni di comando per un file batch?


1

Risposte:


11

Creare una macro globale in Word 2013:

' The Word macro for exporting to PDF (the Word window closes after finishing)
Sub ExportToPDFext()
    ChangeFileOpenDirectory ThisDocument.Path
    ActiveDocument.ExportAsFixedFormat _
        OutputFileName:=Left(ActiveDocument.FullName, InStrRev(ActiveDocument.FullName, ".")) + "pdf", _
        ExportFormat:=wdExportFormatPDF, _
        OpenAfterExport:=False, _
        OptimizeFor:=wdExportOptimizeForPrint, _
        Range:=wdExportAllDocument, _
        From:=1, _
        To:=1, _
        Item:=wdExportDocumentContent, _
        IncludeDocProps:=True, _
        KeepIRM:=True, _
        CreateBookmarks:=wdExportCreateNoBookmarks, _
        DocStructureTags:=True, _
        BitmapMissingFonts:=True, _
        UseISO19005_1:=False
    Application.Quit SaveChanges:=wdDoNotSaveChanges
End Sub

Successivamente puoi convertire un documento Word in PDF nella riga di comando:

"C:\Program Files\Microsoft Office\Office15\WINWORD.EXE" /mExportToPDFext /q "your_document_path.docx"

La finestra di Word non verrà nemmeno visualizzata perché è impostata su chiusura dopo che la macro ha terminato di funzionare e il parametro / q disabilita la finestra iniziale quando Word viene caricato.

Ecco le istruzioni dettagliate alternative su GitHub . Inoltre, l'opzione del menu di scelta rapida consente la conversione batch anche senza la riga di comando. Può essere aggiunto al registro. Per DOC e DOCX:

[HKEY_CLASSES_ROOT\Word.Document.8\shell\SavePDFhere]
@="Save PDF here"

[HKEY_CLASSES_ROOT\Word.Document.8\shell\SavePDFhere\command]
@="\"C:\\Program Files\\Microsoft Office\\Office15\\WINWORD.EXE\" /mExportToPDFext /q \"%1\""

[HKEY_CLASSES_ROOT\Word.Document.12\shell\SavePDFhere]
@="Save PDF here"

[HKEY_CLASSES_ROOT\Word.Document.12\shell\SavePDFhere\command]
@="\"C:\\Program Files\\Microsoft Office\\Office15\\WINWORD.EXE\" /mExportToPDFext /q \"%1\"" 

0

Per un semplice strumento da riga di comando per la conversione in batch puoi usare docx2pdf: https://github.com/AlJohri/docx2pdf/

Installare:

pip install docx2pdf

Correre:

docx2pdf myFolderOfWordDocs

Disclaimer: sono l'autore di questo strumento.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.