KutoolsforOffice — 一套方案,五大工具。事半功倍。

如何将 Word 文档拆分为多个独立文档?

作者Amanda Li修改日期

如果您需要将一个大型 Word 文档拆分为多个较小的文档,本教程将为您介绍三种高效实用的方法。无论您倾向于使用 VBA 按特定分隔符或页面进行拆分,还是希望借助 Kutools for Word 的强大功能,都能轻松找到契合您需求的理想方案。


使用 VBA 按指定分隔符拆分 Word 文档

与其手动拆分文档,不如使用 VBA 按指定分隔符自动拆分 Word 文档。请按以下步骤操作:

  1. 按下 Alt + F11,即可打开 Microsoft Visual Basic for Applications 窗口。
  2. 单击插入> 模块,并将下方的 VBA 代码粘贴到模块窗口中。
    Sub SplitNotes(delim As String, strFilename As String)
    Dim doc As Document
    Dim arrNotes
    Dim I As Long
    Dim X As Long
    Dim Response As Integer
    arrNotes = Split(ActiveDocument.Range, delim)
    Response = MsgBox("This will split the document into " & UBound(arrNotes) + 1 & " sections. Do you wish to proceed?", 4)
    If Response = 7 Then Exit Sub
    For I = LBound(arrNotes) To UBound(arrNotes)
    If Trim(arrNotes(I)) <> "" Then
    X = X + 1
    Set doc = Documents.Add
    doc.Range = arrNotes(I)
    doc.SaveAs ThisDocument.Path & "\" & strFilename & Format(X, "000")
    doc.Close True
    End If
    Next I
    End Sub
    Sub test()
    'delimiter & filename
    SplitNotes "///", "Notes "
    End Sub
  3. 单击运行按钮,或按 F5 即可执行 VBA。
  4. 在 Microsoft Word 弹出窗口中,单击即可确认。确认对话框

注意:

  • 脚本将在文档中查找“///”(位于代码第 22 行),以确定文本应拆分为独立文件的位置。如果您的文档使用了其他分隔符而非“///”,请务必更新 VBA 代码以匹配正确的分隔符,或在文档的所需拆分位置插入“///”。
  • 您可以将代码第 22 行中的 “Notes”替换为任意文本,即可为拆分后的文档生成更具意义的文件名前缀。
  • 拆分后的文档将保存在与原始文件相同的位置。
  • 文档末尾请勿添加分隔符,否则将生成空白文件。

使用 Kutools for Word 按标题/页面/分节符/分页符拆分 Word 文档

相比手动操作或 VBA,Kutools for Word 提供了更便捷、灵活的文档拆分方式。它支持按标题、页面、分节符、分页符、文档页码倍数或自定义页面范围进行拆分,让您轻松根据实际需求定制拆分流程。

Kutools for Word配备人工智能🤖,提供 100 多项实用功能,助您简化任务。
  1. 单击 KUTOOLS PLUS 中的拆分,即可启用拆分功能。功能区上 Kutools Plus 选项卡中的拆分选项
  2. 在文档拆分对话框中,配置以下选项:
    Kutools 拆分文档对话框
    1. 拆分依据下拉列表中选择一种拆分方式,包括标题 1、分页符、分节符、页面、文档页码倍数或自定义页面范围。按选项拆分
    2. 单击路径选择按钮旁的浏览按钮,为拆分后的文档选择目标文件夹。
    3. 文档前缀字段中输入一个关键词,作为新文档名称的前缀。提示:单击刷新按钮刷新按钮,即可在预览框中预览拆分后的文档名。
    4. 单击确定

文档将按照指定方法拆分,生成的文件会保存至指定文件夹中。

注意:

  • 若需按文档页码倍数拆分,请在相应框中指定具体数值。按每 n 页拆分
  • 如需自定义页面范围,请使用逗号分隔输入(例如,)1,3-5,12)。自定义页面范围
Kutools for Word 是终极的 Word 增效工具,可简化您的工作并提升文档处理技能。立即获取!

为多个 Word 文档带来媲美 Chrome 和 Edge 的标签式浏览与编辑体验!

就像在 Chrome、Safari 和 Edge 中浏览多个网页一样,Office Tab 让您能在同一个窗口中轻松打开并管理多个 Word 文档,只需单击文档标签即可快速切换!
立即免费试用 Office Tab!

在一个窗口中像 Chrome 一样浏览多个 Word 文档


使用 VBA 按页面拆分 Word 文档

如需快速将 Word 文档拆分为多个独立文档(每份仅含一页),可借助 VBA 宏自动完成。请按以下步骤操作:

  1. 按下 Alt + F11,即可打开 Microsoft Visual Basic for Applications 窗口。
  2. 单击插入> 模块,然后将以下 VBA 代码粘贴到新模块窗口中:
    Sub SplitIntoPages()
    Dim docMultiple As Document
    Dim docSingle As Document
    Dim rngPage As Range
    Dim iCurrentPage As Integer
    Dim iPageCount As Integer
    Dim strNewFileName As String
    Application.ScreenUpdating = False 'Makes the code run faster and reduces screen flicker a bit.
    Set docMultiple = ActiveDocument 'Work on the active document
    Set rngPage = docMultiple.Range 'Instantiate the range object
    iCurrentPage = 1
    'Get the document's page count
    iPageCount = docMultiple.Content.ComputeStatistics(wdStatisticPages)
    Do Until iCurrentPage > iPageCount
        If iCurrentPage = iPageCount Then
            rngPage.End = ActiveDocument.Range.End 'Last page (no next page)
        Else
            'Find the beginning of the next page
            'Must use the Selection object. The Range.Goto method will not work on a page
            Selection.GoTo wdGoToPage, wdGoToAbsolute, iCurrentPage + 1
            'Set the end of the range to the point between the pages
            rngPage.End = Selection.Start
        End If
        rngPage.Copy 'Copy the page into the Windows clipboard
        Set docSingle = Documents.Add 'Create a new document
        docSingle.Range.Paste 'Paste the clipboard contents to the new document
        'Remove any manual page break to prevent a second blank
        docSingle.Range.Find.Execute Findtext:="^m", ReplaceWith:=""
        'Build a new sequentially numbered file name based on the original multi-paged file name and path
        strNewFileName = Replace(docMultiple.FullName, ".doc", "_" & Right$("000" & iCurrentPage, 4) & ".doc")
        docSingle.SaveAs strNewFileName 'Save the new single-paged document
        iCurrentPage = iCurrentPage + 1 'Move to the next page
        docSingle.Close 'Close the new document
        rngPage.Collapse wdCollapseEnd 'Go to the next page
    Loop 'Go to the top of the do loop
    Application.ScreenUpdating = True 'Restore the screen updating
    'Destroy the objects.
    Set docMultiple = Nothing
    Set docSingle = Nothing
    Set rngPage = Nothing
    End Sub
  3. 单击运行按钮,或按 F5 即可执行 VBA。

注意:拆分后的文档将保存在与原始文件相同的位置。


相关文章:


最佳办公效率工具

Kutools for Word——通过 100 多项卓越功能,全面提升您的 Word 使用体验!

🤖KUTOOLS AI 功能AI 助手/实时助手/超级润色(保留格式)/超级翻译(保留格式)/AI 遮挡/AI 校正……

📘 文档掌控拆分页面/文档合并/以多种格式导出所选内容(PDF/TXT/DOC/HTML……)/批量转换为 PDF……

内容编辑批量查找与替换多个文件/调整所有图片大小/翻转表格行和列/表格转文本……

🧹 轻松清理:一键清除多余空格/分节符/文本框/超链接/ 更多清理工具,请前往删除组……

创意插入:插入千位分隔符/复选框/选项按钮/二维码/条形码/多张图片/ 更多功能,请查看插入组……

🔍 精准选择:精准定位特定页面/表格/形状/标题段落/ 通过更多选择功能提升导航体验……

明星增强功能跳转至任意位置/自动插入重复文本/在文档 Windows 之间切换/11 转换工具……

🌍 支持 40+ 种语言:使用您熟悉的首选语言操作 Kutools——支持英语、西班牙语、德语、法语、中文等 40 多种语言!

Kutools for Word
 
 

Office Tab- 为 Office 带来标签式界面,让您的工作更加轻松

  • 在 Word、Excel、PowerPoint、Publisher、Access、Visio 和 Project 中启用标签式编辑与阅读体验。
  • 在同一个窗口的新标签页中打开并创建多个文档,而非在新窗口中操作。
  • 每天为您减少数百次鼠标点击, productivity 提升 50%!

✨ Kutools for Office – 一次安装,畅享五款强大工具!

包含 Office Tab Pro·Kutools for Excel·Kutools for Outlook·Kutools for Word·Kutools for PowerPoint

📦 一套套件集成全部 5 款工具 | 🔗 与 Microsoft Office 无缝集成 | ⚡ 立即保存时间并提升工作效率

最佳办公效率工具

Kutools for Word- Word 专用 100+ 款工具