跳到主要內容

如何在Word文檔中將每個頁面另存為單獨的pdf文件?

使用Microsoft Word文檔時,可以使用其內置的“另存為”功能將每一頁分別保存為單獨的pdf文件。 但是,如果需要拆分成數百個頁面並將其另存為單獨的pdf文件,該怎麼辦? 本文為您提供了快速解決此問題的方法。

使用VBA代碼將每個頁面另存為單獨的pdf文件


使用VBA代碼將每個頁面另存為單獨的pdf文件

下面的VBA代碼可幫助您同時快速將文檔中的每個頁面另存為單獨的pdf文件。 請執行以下操作。

1.打開文檔,您將每頁或特定頁面另存為pdf文件,然後按 其他 + F11 鍵打開 Microsoft Visual Basic for Applications 窗口。

2。 在裡面 Microsoft Visual Basic for Applications 窗口中,單擊 插入 > 模塊 將下面的VBA代碼複製到“模塊”窗口中。

VBA代碼:將每個頁面同時保存為Word文檔中的單獨pdf文件

Sub SaveAsSeparatePDFs()
'Updated by Extendoffice 20180906
    Dim I As Long
    Dim xStr As String
    Dim xPathStr As Variant
    Dim xDictoryStr As String
    Dim xFileDlg As FileDialog
    Dim xStartPage, xEndPage As Long
    Dim xStartPageStr, xEndPageStr As String
    Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    If xFileDlg.Show <> -1 Then
        MsgBox "Please chose a valid directory", vbInformation, "Kutools for Word"
        Exit Sub
    End If
    xPathStr = xFileDlg.SelectedItems(1)
    xStartPageStr = InputBox("Begin saving PDFs starting with page __? " & vbNewLine & "(ex: 1)", "Kutools for Word")
    xEndPageStr = InputBox("Save PDFs until page __?" & vbNewLine & "(ex: 7)", "Kutools for Word")
    If Not (IsNumeric(xStartPageStr) And IsNumeric(xEndPageStr)) Then
        MsgBox "The enterng start page and end page should be number format", vbInformation, "Kutools for Word"
        Exit Sub
    End If
    xStartPage = CInt(xStartPageStr)
    xEndPage = CInt(xEndPageStr)
    If xStartPage > xEndPage Then
        MsgBox "The start page number can't be larger than end page", vbInformation, "Kutools for Word"
        Exit Sub
    End If
    If xEndPage > ActiveDocument.BuiltInDocumentProperties(wdPropertyPages) Then
        xEndPage = ActiveDocument.BuiltInDocumentProperties(wdPropertyPages)
    End If
    For I = xStartPage To xEndPage
        ActiveDocument.ExportAsFixedFormat xPathStr & "\Page_" & I & ".pdf", _
        wdExportFormatPDF, False, wdExportOptimizeForPrint, wdExportFromTo, I, I, wdExportDocumentWithMarkup, _
        False, False, wdExportCreateHeadingBookmarks, True, False, False
    Next
End Sub

3。 按 F5 鍵來運行代碼。

4。 在裡面 瀏覽 窗口中,選擇一個文件夾來保存pdf文件,然後單擊 OK 按鈕。 看截圖:

5.在第一 Kutools for Word 對話框,在文本框中輸入文檔的起始頁碼,然後單擊 OK.

6.在第二 Kutools for Word 對話框中,輸入文檔的最後頁碼,然後單擊 確定。 見截圖:

備註:如果您只想將文檔中的多個連續頁面另存為單獨的pdf文件(例如第4、5和6頁),請在上述兩個對話框中分別輸入4和6。

運行代碼後,請轉到在步驟4中選擇的指定文件夾,您可以看到所有頁面均被拆分並另存為單獨的pdf文件,如下圖所示。


將文檔的每一頁拆分並保存為單獨的新文檔:

分割文件 的效用 Excel的Kutools 可以幫助您輕鬆地將當前文檔的每一頁分割並保存為單獨的新文檔,如下面的屏幕截圖所示。 立即下載並試用! (60-天免費試用)

最佳辦公生產力工具

Kutools for Word - 透過 Over 提升您的文字體驗 100 顯著特點!

深入了解下面突出顯示的功能或 按此探索 Kutools for Word 的全部功能.

📘 文件掌握: 分頁  /  合併文件  /  以各種格式匯出選擇(PDF/TXT/DOC/XLSX)  /  批次轉換為PDF  /  將頁面匯出為圖像  /  一次列印多個文件 ...

內容編輯: 批量查找和替換 跨多個文件   /  調整所有圖片的大小   /  轉置表行和列  /  將表格轉換為文字 ...

🧹 輕鬆清潔掃開 多餘的空間  /  分節符  /   所有標題  /  文本框  /  超鏈接  /  如需更多刪除工具,請前往我們的刪除群組

創意插入: 插入 千位分隔符  /  複選框  /  單選按鈕  /  QR Code  /  條碼  /  對角線表  /  公式標題  /  圖片說明  /  表格標題  /  多張圖片  /  在我們的插入組中發現更多信息

🔍 精準選擇: 精確定位特定頁面  /    /  形狀  /  標題段落  /  使用我們的選擇組輕鬆導航

星級增強: 快速導航至任何位置  /  自動插入重複文字  /  在文檔視窗之間無縫切換  /  11 轉換工具 ...

使用 Kutools 轉換您的 Word 任務。 👉 立即下載並試用 30 天 🚀。

閱讀更多       免費下載      購買
 
Comments (24)
Rated 5 out of 5 · 3 ratings
This comment was minimized by the moderator on the site
Hi
what if I need to set specific name for each splited PDF.
This should be taken from WORD text - it is serial korespondece- all pages have same format
Can you advise?
This comment was minimized by the moderator on the site
Hi, how would you save each pdf page as a name that can be found from within each word page being exported?
This comment was minimized by the moderator on the site
Hi, how will change the code for mac os?
This comment was minimized by the moderator on the site
Is there a way to save per 2 pages?

Ex. save page 1/2 in Page_1.pdf
save page 3/4 in Page_2.pdf

Thanks!
This comment was minimized by the moderator on the site
im wondering the same thing! please help!
This comment was minimized by the moderator on the site
Wondering the same
This comment was minimized by the moderator on the site
10x :) this was realy helpful!!!
Rated 5 out of 5
This comment was minimized by the moderator on the site
Thanks for this, this is great. i was wondering if you have a way of naming my pdf files differently per each extract not only Page_1.pdf.

Thanks
This comment was minimized by the moderator on the site
Hi samir,
How would you like to name these pdf files? Please give me an example.
This comment was minimized by the moderator on the site
Like saving each document with a different name, not just Page_1.pdf and so on.
This comment was minimized by the moderator on the site
Hi Camila,
The following VBA code can help you solve the problem.
Note: You need to specify a different name in this line: xFileName = "AA; BB; CC; DD". Here AA, BB and CC are the names for the PDF files.
Please change them to meet your needs. You can add more names and separate them by semicolon. To mention that the number of names specified must match the number of pages you expored. And the PDF files will be named in order of the specified names in the code.
Sub SaveAsSeparatePDFs()
'Updated by Extendoffice 20221223
    Dim xStr As String
    Dim xPathStr As Variant
    Dim xDictoryStr As String
    Dim xFileDlg As FileDialog
    Dim xStartPage, xEndPage As Long
    Dim xStartPageStr, xEndPageStr As String
    Dim xFileName As String
    Dim xNameArr() As String

    xFileName = "AA; BB; CC; DD"  'Specify a name for each page. The number of names specified must match the number of pages you exported.The PDF files will be named in order of the the specified names
    xNameArr = VBA.Split(xFileName, ";")
    Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    If xFileDlg.Show <> -1 Then
        MsgBox "Please chose a valid directory", vbInformation, "Kutools for Word"
        Exit Sub
    End If
    xPathStr = xFileDlg.SelectedItems(1)
    xStartPageStr = InputBox("Begin saving PDFs starting with page __? " & vbNewLine & "(ex: 1)", "Kutools for Word")
    xEndPageStr = InputBox("Save PDFs until page __?" & vbNewLine & "(ex: 7)", "Kutools for Word")
    If Not (IsNumeric(xStartPageStr) And IsNumeric(xEndPageStr)) Then
        MsgBox "The enterng start page and end page should be number format", vbInformation, "Kutools for Word"
        Exit Sub
    End If
    xStartPage = CInt(xStartPageStr)
    xEndPage = CInt(xEndPageStr)
    If xStartPage > xEndPage Then
        MsgBox "The start page number can't be larger than end page", vbInformation, "Kutools for Word"
        Exit Sub
    End If
    If xEndPage > ActiveDocument.BuiltInDocumentProperties(wdPropertyPages) Then
        xEndPage = ActiveDocument.BuiltInDocumentProperties(wdPropertyPages)
    End If
    For I = xStartPage To xEndPage
        ActiveDocument.ExportAsFixedFormat xPathStr & "\" & VBA.Trim(xNameArr(I - 1)) & ".pdf", _
        wdExportFormatPDF, False, wdExportOptimizeForPrint, wdExportFromTo, I, I, wdExportDocumentWithMarkup, _
        False, False, wdExportCreateHeadingBookmarks, True, False, False
    Next
    Erase xNameArr
End Sub
This comment was minimized by the moderator on the site
Добрый день!
Есть ли возможность сохранить из ворд файла(используя слияние) в пдф файл - Решения собственников на общее собрание.
При этом учитываем, что PDF должен сохраняться так: в 1 файле должно быть несколько листов (1 квартира), по данному модулю страницы сохраняются в пдф, но раздельно
This comment was minimized by the moderator on the site
Hi,
Sorry I don't understand what you mean. You may need to attach a screenshot or a sample file to describe the problem you encountered more clearly.
This comment was minimized by the moderator on the site
Thanks for the script, it has also saved me a lot of work in exporting pages as pdf!
Rated 5 out of 5
This comment was minimized by the moderator on the site
Reading these instructions has helped me to complete a project that would've taken 2 or more hours, in 20 minutes. Thank you so much!
Rated 5 out of 5
This comment was minimized by the moderator on the site
Hi Kyle Baldwin,
It would be our pleasure to help solve your problem.
This comment was minimized by the moderator on the site
Que legal... aqui deu super certo!

Obrigada
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations