跳到主要内容

如何拆分Word文档并另存为单独的PDF文件?

在Word中,您可以将整个文档保存为PDF文件,但是您是否曾经尝试过拆分文档,然后将页面另存为单独的PDF文件? 在本文中,我将介绍快速解决此问题的方法。

拆分Word文档并使用VBA另存为单独的PDF文件

将 Word 文档拆分为按 pages/heading1/break 分隔文件,然后另存为 PDF


拆分Word文档并使用VBA另存为单独的PDF文件

这里的VBA代码可以帮助您直接按页面拆分Word文档,然后另存为单独的PDF文件。

1。 按 Alt + F11键 启用键 Microsoft Visual Basic应用程序 窗口。

2。 点击 插页 > 模块,将以下代码复制并粘贴到 模块 窗口。

VBA:将Word另存为单独的PDF

Sub SaveAsSeparatePDFs()
'UpdatebyExtendoffice20181120
    Dim I As Long
    Dim xDlg As FileDialog
    Dim xFolder As Variant
    Dim xStart, xEnd As Integer
    On Error GoTo lbl
    Set xDlg = Application.FileDialog(msoFileDialogFolderPicker)
    If xDlg.Show <> -1 Then Exit Sub
    xFolder = xDlg.SelectedItems(1)
    xStart = CInt(InputBox("Start Page", "KuTools for Word"))
    xEnd = CInt(InputBox("End Page:", "KuTools for Word"))
    If xStart <= xEnd Then
        For I = xStart To xEnd
            ActiveDocument.ExportAsFixedFormat OutputFileName:= _
                xFolder & "\Page_" & I & ".pdf", ExportFormat:=wdExportFormatPDF, _
                OpenAfterExport:=False, OptimizeFor:=wdExportOptimizeForPrint, Range:= _
                wdExportFromTo, From:=I, To:=I, Item:=wdExportDocumentContent, _
                IncludeDocProps:=False, KeepIRM:=False, CreateBookmarks:= _
                wdExportCreateHeadingBookmarks, DocStructureTags:=True, _
                BitmapMissingFonts:=False, UseISO19005_1:=False
        Next
    End If
    Exit Sub
lbl:
    MsgBox "Enter right page number", vbInformation, "KuTools for Word"
End Sub

3。 按 F5 键,在“浏览”对话框中,选择一个文件夹来放置PDF文件。
doc拆分保存pdf 1

4。 点击 OK,然后输入要分割开始和结束的页码。

doc拆分保存pdf 2 doc拆分保存pdf 3

5。 点击 OK。 现在,页面已另存为单独的PDF文件。
doc拆分保存pdf 4


将 Word 文档拆分为按 pages/heading1/break 分隔文件,然后另存为 PDF

如果对 VBA 代码不熟悉,可以尝试使用插件工具—— Kutools for Word,它的 分裂 功能可以帮助您根据分页符、页码、标题1、分节符、每第 n 页和您指定的自定义页码将 Word 文档拆分为页面,然后应用 文件格式转换器 将拆分的 Word 文档批量转换为 PDF。

安装后 Kutools for Word,请执行以下操作:(立即免费下载 Kutools for Word!)

1.启用要转换为拆分的Word文档,单击 Kutools 加 > 分裂.

2.在 分割文件 对话框中,在“拆分依据”部分中根据需要选择拆分规则。 然后指定保存位置和拆分文档文件前缀。 点击 Ok.

分割为 部分,它为您提供了 6 种拆分类型。 有关每种拆分类型的更多详细信息,请访问 功能介绍.

现在拆分的文档已保存在指定位置。

3. 拆分文档后,点击 Kutools 加 > 文件/文件.

4.在 文件格式转换器 对话框中,选择 将Docx转换为PDF 申请 格式转换器 下拉列表,单击加号添加包含要转换为 PDF 的文档的文件或文件夹,然后根据需要指定其他设置(默认情况下,它将 PDF 文件保存在源文件夹中,您可以更改它)。 点击 Ok.

现在 Word 文档已转换为 PDF 文件。


最佳办公生产力工具

Kutools for Word - 通过 Over 提升您的文字体验 100 显着特点!

深入了解下面突出显示的功能或 单击此处探索 Kutools for Word 的全部功能.

📘 文档掌握: 分页  /  合并文件  /  以各种格式导出选择(PDF/TXT/DOC/XLSX)  /  批量转换为PDF  /  将页面导出为图像  /  一次打印多个文件 ...

内容编辑: 批量查找和替换 跨多个文件   /  调整所有图片的大小   /  转置表行和列  /  将表格转换为文字 ...

🧹 轻松清洁扫开 多余的空间  /  分节符  /   所有标题  /  文本框  /  超链接  /  如需更多删除工具,请前往我们的删除组

创意插入: 插页 千位分隔符  /  复选框  /  单选按钮  /  二维码  /  条码  /  对角线表  /  公式标题  /  图片说明  /  表标题  /  多张图片  /  在我们的插入组中发现更多信息

🔍 精准选择: 精确定位特定页面  /    /  形状  /  标题段落  /  使用我们的选择组轻松导航

星级增强: 快速导航至任何位置  /  自动插入重复文本  /  在文档窗口之间无缝切换  /  11 转换工具 ...

使用 Kutools 转换您的 Word 任务。 👉 立即下载并试用 30 天 🚀。

了解更多       免费下载      购买
 
Comments (27)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Very useful. I appreciate the work. Wish we can select how many pages for a split
This comment was minimized by the moderator on the site
Hi, the Split feature already support split specific pages and save as PDF only.
Choose Custom from the drop-down list in Split by section, then type the pasge numbers seperated by commas in the Page textbox, please see screenshot:
https://www.extendoffice.com/images/stories/comments/sun-comment/split-word-1.png?1702630242000
This comment was minimized by the moderator on the site
Kedves Napos!

Mostmár majdnem tökéletes a kód ahhoz, amit szeretnék. A 9. sorból szeretném a fájl nevét venni, de csak a 20. karaktertől.

Ez megoldható lenne?

Nagyon szépen köszönöm.

minimorisz
This comment was minimized by the moderator on the site
Hi, try this vba
Sub SaveAsSeparatePDFs()
'UpdatebyExtendoffice20221122
    Dim I As Long
    Dim xDlg As FileDialog
    Dim xFolder As Variant
    Dim xStart, xEnd As Integer
    Dim xName As String
    On Error GoTo lbl
    Set xDlg = Application.FileDialog(msoFileDialogFolderPicker)
    If xDlg.Show <> -1 Then Exit Sub
    xFolder = xDlg.SelectedItems(1)
    xStart = CInt(InputBox("Start Page", "KuTools for Word"))
    xEnd = CInt(InputBox("End Page:", "KuTools for Word"))
    If xStart <= xEnd Then
        For I = xStart To xEnd
            xName = InputBox("Page: " & I, "Enter the name for this page")
            ActiveDocument.ExportAsFixedFormat OutputFileName:= _
                xFolder & "\" & xName & ".pdf", ExportFormat:=wdExportFormatPDF, _
                OpenAfterExport:=False, OptimizeFor:=wdExportOptimizeForPrint, Range:= _
                wdExportFromTo, From:=I, To:=I, Item:=wdExportDocumentContent, _
                IncludeDocProps:=False, KeepIRM:=False, CreateBookmarks:= _
                wdExportCreateHeadingBookmarks, DocStructureTags:=True, _
                BitmapMissingFonts:=False, UseISO19005_1:=False
        Next
    End If
    Exit Sub
lbl:
    MsgBox "Enter right page number", vbInformation, "KuTools for Word"
End Sub

You will rename the pdf file one by one in the poping dialog while applying the vba.
This comment was minimized by the moderator on the site
Hi Sunny,

any chance you know the code for the file name to be taken from the Third line of the file? or a specific location?

thank you!
This comment was minimized by the moderator on the site
Hi, try this vba
Sub SaveAsSeparatePDFs()

'UpdatebyExtendoffice20221221
    Dim I As Long
    Dim xDlg As FileDialog
    Dim xFolder As Variant
    Dim xStart, xEnd As Integer
    Dim xStrName As String
    Dim xPath As String
'    On Error Resume Next

    Set xDlg = Application.FileDialog(msoFileDialogFolderPicker)
    If xDlg.Show <> -1 Then Exit Sub
    xFolder = xDlg.SelectedItems(1)
    xStart = CInt(InputBox("Start Page", "KuTools for Word"))
    xEnd = CInt(InputBox("End Page:", "KuTools for Word"))
    If xStart <= xEnd Then
        For I = xStart To xEnd
                Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext, Name:=I
                Selection.GoTo What:=wdGoToLine, Which:=wdGoToNext, Name:=3 - 1
                Selection.Extend
                Selection.EndKey Unit:=wdLine
                Selection.EscapeKey
   
                xStrName = Selection.Range
                xStrName = Replace(xStrName, " ", "")
                xStrName = Replace(xStrName, vbLf, "")
                xStrName = Replace(xStrName, Chr(10), "")
                xStrName = Replace(xStrName, Chr(13), "")
                xStrName = Replace(xStrName, "\", "")
                xStrName = Replace(xStrName, "/", "")
                xStrName = Replace(xStrName, ":", "")
                xStrName = Replace(xStrName, "*", "")
                xStrName = Replace(xStrName, "?", "")
                xStrName = Replace(xStrName, "<", "")
                xStrName = Replace(xStrName, ">", "")
                xStrName = Replace(xStrName, "|", "")
                xStrName = Replace(xStrName, """", "")
                If xStrName = "" Then
                    xStrName = I
                End If
                xPath = xFolder & "\" & xStrName & ".pdf"
                ActiveDocument.ExportAsFixedFormat OutputFileName:=xPath, ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False, OptimizeFor:=wdExportOptimizeForPrint, Range:=wdExportFromTo, From:=I, To:=I, Item:=wdExportDocumentContent, IncludeDocProps:=False, KeepIRM:=False, CreateBookmarks:=wdExportCreateHeadingBookmarks, DocStructureTags:=True, BitmapMissingFonts:=False, UseISO19005_1:=False
        Next
    End If
End Sub

If there is empty in the third line, the pdf file will be named with number.
This comment was minimized by the moderator on the site
Kedves Napos!

Ez a kód már majdnem tökéletes, a fájl elnevezéséből még ki kellene valahogyan szedni a Az eszközökért felelős személy neve részt, és akkor csak a dolgozó neve maradna.
Köszönöm szépen!

minimorisz
This comment was minimized by the moderator on the site
Kérnék részlete leírást arról, hogy hogyan tudom elnevezni a létrehozott dokumentumokat egy lépésben, akár VBA-val.
Köszönöm.
This comment was minimized by the moderator on the site
Hi,

This code spilts the mail merge into individual PDF's. But I need to split the first 2 pages as one doc. Means if there are 12 pages I need 6 PDF docs. A set of 2 into one PDF file. Right now this code splits it into 12 individual files. Please advise what should I change in the code.
This comment was minimized by the moderator on the site
Hi, SAROJ, I suggest that using tools in Kutools for Word, steps are the same as my reply for TEILLET
This comment was minimized by the moderator on the site
Bonjour,
Est-il possible de changer le module pour fractionner le fichier word en PDF toutes les 24 pages ?

Merci de votre aide
This comment was minimized by the moderator on the site
Hi, TEILLET, you can apply Kutools for Word's Split Document feature, and choose every n pages in the Split by section, then type 24 into Every n pages textbox, specify other settings, then click Ok, every 24 pages will be seperated as one single document. Then apply You should try Doc/Docx feature of Kutools for Excel, and choose Convert Docx to PDF from Format Convert section, and choose one location to save, click Ok, now every 24 page has been saved as PDF.
We have upgraded the features in Kutools for Word, but this article has not update, so the screenshots are old. We will update the contents soon, you can follow the steps to achieve.


Kutools for Word is free in 60-day, you may find more useful tool. Free Download
This comment was minimized by the moderator on the site
Very helpful and easy to use tip. Saved me a lot of time. Thank you so much.
This comment was minimized by the moderator on the site
Hello,When I click okay, the screen disappears but nothing is saved?Is there another setting I need to enable somewhere?
Also, the save to goes to my One Drive local folder, if that might be an issue?Thanks
This comment was minimized by the moderator on the site
Is there also a possibility to save the files not as Page 1 or Page 2, but with a name based on the content of the page?
This comment was minimized by the moderator on the site
I had able split document, need the guidance if i want to save the document with individual name
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