Note: The other languages of the website are Google-translated. Back to English
Login  \/ 
x
or
x
Registrati  \/ 
x

or

Come convertire in batch più documenti Word in file PDF?

È facile convertire un documento Word in un file PDF con la funzione Salva come in Word. Ma se vuoi convertire tutti i documenti di Word in una cartella in file PDF separati contemporaneamente, come puoi ottenerlo? Questo articolo ti mostrerà un codice VBA per convertire in batch più documenti Word in file pdf in Word.

Batch converte più documenti Word in file pdf con VBA
Converti in batch più documenti Word in file PDF con Kutools per Word


Batch converte più documenti Word in file pdf con VBA

Il seguente codice VBA ti aiuta a convertire rapidamente tutti i documenti di Word in una cartella in file pdf contemporaneamente. Si prega di fare quanto segue.

1. In Word, premere il pulsante altro + F11 chiavi per aprire il Microsoft Visual Basic, Applications Edition finestra.

2. Nel Microsoft Visual Basic, Applications Edition finestra, fare clic inserire > Modulo, quindi copia sotto il codice VBA nella finestra del modulo.

Codice VBA: converte in batch più documenti Word in file PDF in Word

Sub ConvertWordsToPdfs()
'Updated by Extendoffice 20181123
    Dim xIndex As String
    Dim xDlg As FileDialog
    Dim xFolder As Variant
    Dim xNewName As String
    Dim xFileName As String
    Set xDlg = Application.FileDialog(msoFileDialogFolderPicker)
    If xDlg.Show <> -1 Then Exit Sub
    xFolder = xDlg.SelectedItems(1) + "\"
    xFileName = Dir(xFolder & "*.*", vbNormal)
    While xFileName <> ""
        If ((Right(xFileName, 4)) <> ".doc" Or Right(xFileName, 4) <> ".docx") Then
            xIndex = InStr(xFileName, ".") + 1
            xNewName = Replace(xFileName, Mid(xFileName, xIndex), "pdf")
            Documents.Open FileName:=xFolder & xFileName, _
                ConfirmConversions:=False, ReadOnly:=False, AddToRecentFiles:=False, _
                PasswordDocument:="", PasswordTemplate:="", Revert:=False, _
                WritePasswordDocument:="", WritePasswordTemplate:="", Format:= _
                wdOpenFormatAuto, XMLTransform:=""
            ActiveDocument.ExportAsFixedFormat OutputFileName:=xFolder & xNewName, _
                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
            ActiveDocument.Close
        End If
        xFileName = Dir()
    Wend
End Sub

3. premi il F5 chiave per eseguire il codice.

4. Viene visualizzata una finestra di dialogo Sfoglia, selezionare la cartella che contiene i documenti di Word da convertire in file PDF e fare clic su OK pulsante.

Quindi tutti i documenti di Word nella cartella selezionata vengono convertiti in file PDF separati contemporaneamente. Vedi screenshot:


Converti in batch più documenti Word in file PDF con Kutools per Word

Se il codice VBA è difficile da gestire, puoi provare il file Converti documenti utilità di Kutools for Word per risolvere il problema.

Kutools for Word : Con oltre 100 utili componenti aggiuntivi di Word, libero di provare senza limitazioni in 60 giorni.

1. Clic Kutools Plus > Doc / Docx. Vedi screenshot:

2. Nel Convertitore formato documento finestra, devi fare come segue:

2.1) Seleziona la cartella contenente i documenti che convertirai in pdf nel file Cartella del file di origine sezione;
2.2 Selezionare Converti docx in pdf dal Formato Converti menu `A tendina;
2.3) Per impostazione predefinita, il file Percorso di destinazione uguale all'origine la casella è selezionata. Se vuoi posizionare tutti i file pdf convertiti nella stessa cartella, tieni selezionata questa opzione;
Se vuoi separare i file pdf dai documenti di origine, devi deselezionare il file Percorso di destinazione uguale all'origine casella e seleziona una nuova cartella per salvare i file pdf nel file Salvare scatola;
2.4) Fare clic su Inizia pulsante. Vedi screenshot:

3. Quindi viene visualizzata una finestra di dialogo per indicare quanti documenti sono stati convertiti correttamente, fare clic su OK e chiudere il Convertitore formato documento finestra.

Ora tutti i documenti in formato .docx vengono convertiti in file pdf.

Se vuoi avere una prova gratuita di questa utility, vai su scarica gratuitamente il software prima, quindi vai ad applicare l'operazione secondo i passaggi precedenti.



Strumenti di produttività Word consigliati

 

Kutools per Word: oltre 100 funzionalità avanzate per Word, risparmia il 50% del tempo

  • Le operazioni complicate e ripetute possono essere eseguite una sola volta in pochi secondi.
  • Inserisci più immagini tra le cartelle nel documento di Word contemporaneamente.
  • Unisci e combina più file di Word tra cartelle in uno con l'ordine desiderato.
  • Suddividi il documento corrente in documenti separati in base a titolo, interruzione di sezione o altri criteri.
  • Converti file tra Doc e Docx, Docx e PDF, raccolta di strumenti per conversioni e selezioni comuni e così via ...

Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Chengchi · 1 months ago
    VBA 很棒!!感謝您的分享。
  • To post as a guest, your comment is unpublished.
    K DEG · 2 months ago
    This saved my day, thanks so much!

    I would just like to point out for people using this, if the Word seems to freeze, just wait - it is generating the .pdf files. My Word froze but I opened the folder of the files, and could see that it was indeed generating the .pdf for all files.
  • To post as a guest, your comment is unpublished.
    Garrie · 2 months ago
    If you change
    xFileName = Dir(xFolder & "*.*", vbNormal)
     to 
    xFileName = Dir(xFolder & "*.doc*", vbNormal)
    the macro will not crash when there are non-Word files in the same folder.

  • To post as a guest, your comment is unpublished.
    Garrie · 2 months ago
    If you change
    xIndex = InStr(xFileName, ".") + 1
     to 
    xIndex = InStrRev(xFileName, ".") + 1
    it will search from the end of the string to find the first period. This will avoid problems where the filename contains periods.
  • To post as a guest, your comment is unpublished.
    Jirka · 3 months ago
    Change
     xIndex = InStr(xFileName, ".") + 1


  • To post as a guest, your comment is unpublished.
    San · 10 months ago
    The VBA code is great. Cheers ,ate
  • To post as a guest, your comment is unpublished.
    Doris · 1 years ago
    thanks for vba code , it helps a lot.
  • To post as a guest, your comment is unpublished.
    Eric Smith · 1 years ago
    Hello, Thank you so much for this code. It is working well, however, I get a dialog box after each conversion to save the word doc and I have to save. Can you include code in the macro to make that save and close the file instead of having to close each one?
    • To post as a guest, your comment is unpublished.
      Rebecca · 10 months ago
      if you add "ActiveDocument.Save" right above "ActiveDocument.Close" it will save the document before closing itself so you don't have to always hit the save prompt.
  • To post as a guest, your comment is unpublished.
    9aks92 · 1 years ago
    Hi,

    I get runtime error '424':
    Object required

    image attached.


    Please help.

    Thanks.
  • To post as a guest, your comment is unpublished.
    Akshay · 1 years ago
    Hi,

    I get runtime error '424':
    Object required

    at the below code

    Documents.Open Filename:=xFolder & xFileName, _
    ConfirmConversions:=False, ReadOnly:=False, AddToRecentFiles:=False, _
    PasswordDocument:="", PasswordTemplate:="", Revert:=False, _
    WritePasswordDocument:="", WritePasswordTemplate:="", Format:= _
    wdOpenFormatAuto, XMLTransform:=""


    wdOpenFormatAuto = 0 it says.

    Please help.

    Thanks.
  • To post as a guest, your comment is unpublished.
    Stefan · 1 years ago
    Hi there,


    is there an easy way to adjust the VBA Code so that the Documents are convertet to .txt-Files?
  • To post as a guest, your comment is unpublished.
    Sammy · 2 years ago
    Is there any way to have the file name taken from the text of the document?
  • To post as a guest, your comment is unpublished.
    Marzio · 2 years ago
    VBA if i try to convert file that contains macros the macro swith to open file and ends without close file.
  • To post as a guest, your comment is unpublished.
    michaelwaung · 2 years ago
    So nice blog, Thanks for sharing this blog. It Has so useful information for users. I liked this information so much.
    Hope you keep sharing such kind of information convert word doc to html