Note: The other languages of the website are Google-translated. Back to English
ログイン  \/ 
x
or
x
今すぐ登録  \/ 
x

or

複数のWord文書をPDFファイルにバッチ変換する方法は?

Wordの[名前を付けて保存]機能を使用すると、Word文書をPDFファイルに簡単に変換できます。 しかし、フォルダ内のすべてのWord文書を一度に別々のPDFファイルに変換したい場合、どうすればそれを実現できますか? この記事では、複数のWord文書をWordでPDFファイルにバッチ変換するVBAコードを紹介します。

複数のWord文書をVBAでPDFファイルにバッチ変換する
Kutools for Wordを使用して、複数のWordドキュメントをPDFファイルにバッチ変換します


複数のWord文書をVBAでPDFファイルにバッチ変換する

次のVBAコードは、フォルダ内のすべてのWord文書を一度にPDFファイルにすばやく変換するのに役立ちます。 次のようにしてください。

1. Wordで、を押します 他の + F11 キーを押して アプリケーション向け Microsoft Visual Basic 窓。

2。 の中に アプリケーション向け Microsoft Visual Basic ウィンドウ、クリック インセット > モジュール、次に以下のVBAコードをモジュールウィンドウにコピーします。

VBAコード:複数のWord文書をWordのPDFファイルにバッチ変換します

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。 プレス F5 コードを実行するためのキー。

4. [参照]ダイアログが表示されます。PDFファイルに変換するWordドキュメントが含まれているフォルダを選択し、[ OK ボタン。

次に、選択したフォルダ内のすべてのWord文書が一度に個別のPDFファイルに変換されます。 スクリーンショットを参照してください:


Kutools for Wordを使用して、複数のWordドキュメントをPDFファイルにバッチ変換します

VBAコードの処理が難しい場合は、 ドキュメントを変換する の有用性 Kutools for Word この問題を解決します。

Kutools for Word :100以上の便利なWordアドインで、 60日以内に制限なしで無料でお試しいただけます.

1。 クリック クツールズプラス > Doc / Docx。 スクリーンショットを参照してください:

2。 の中に ドキュメントフォーマットコンバーター ウィンドウでは、次のようにする必要があります。

2.1)PDFに変換するドキュメントが含まれているフォルダを選択します ソースファイルフォルダ セクション;
2.2選択 docxをpdfに変換する から フォーマット変換 ドロップダウンリスト;
2.3)デフォルトでは、 ソースと同じ宛先パス ボックスがチェックされています。 変換されたすべてのPDFファイルを同じフォルダーに配置する場合は、このオプションを選択したままにします。
PDFファイルとソースドキュメントを分離する場合は、チェックを外す必要があります ソースと同じ宛先パス ボックスをクリックし、新しいフォルダを選択してPDFファイルを に保存 ボックス;
2.4)をクリックします 開始 ボタン。 スクリーンショットを参照してください:

3.次に、正常に変換されたドキュメントの数を示すダイアログボックスが表示されたら、[ OK ボタンを押して閉じます ドキュメントフォーマットコンバーター 窓。

これで、すべての.docx形式のドキュメントがpdfファイルに変換されます。

このユーティリティの無料トライアルをご希望の場合は、 ソフトウェアを無料でダウンロード まず、上記の手順に従って操作を適用します。



推奨される単語生産性ツール

 

Kutools For Word-100を超えるWordの高度な機能で50%の時間を節約

  • 複雑で繰り返される操作は、数秒でXNUMX回の処理で実行できます。
  • 複数の画像をフォルダ間でWord文書に一度に挿入します。
  • フォルダ間で複数のWordファイルをマージして、希望の順序でXNUMXつに結合します。
  • 見出し、セクション区切り、またはその他の基準に従って、現在のドキュメントを個別のドキュメントに分割します。
  • DocとDocx、DocxとPDFの間でファイルを変換し、一般的な変換と選択のためのツールのコレクションなど...

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