如何每5或n页将Word文档拆分为多个单独的文件?
如果您现在有一个包含数百页的大型Word文档,则希望每10或n页将此文档拆分为多个单独的文件。 有没有一种快速简便的方法来解决这项工作,而无需一页一页地复制和粘贴页面?
使用VBA代码每10或n页将Word文档拆分为单独的文件
每隔10或n页将Word文档拆分为单独的文件,具有惊人的功能
使用VBA代码每10或n页将Word文档拆分为单独的文件
要将每10或n页的大型文档拆分为多个单独的文件,请使用以下VBA代码,具体操作如下:
1。 按住 ALT + F11 键打开 Microsoft Visual Basic应用程序 窗口。
2。 然后,单击 插页 > 模块,将以下代码复制并粘贴到打开的空白模块中:
VBA代码:每10或n页将文档拆分为多个单独的文件:
Sub DocumentSplitter()
Dim xDoc As Document, xNewDoc As Document
Dim xSplit As String, xCount As Long, xLast As Long
Dim xRngSplit As Range, xDocName As String, xFileExt As String
Dim xRegEx As RegExp
Dim xPageCount As Integer
Dim xShell As Object, xFolder As Object, xFolderItem As Object
Dim xFilePath As String
On Error Resume Next
Set xDoc = Application.ActiveDocument
Set xShell = CreateObject("Shell.Application")
Set xFolder = xShell.BrowseforFolder(0, "Select a Folder:", 0, 0)
If TypeName(xFolder) = "Nothing" Then Exit Sub
Set xFolderItem = xFolder.Self
xFilePath = xFolderItem.Path & "\"
Application.ScreenUpdating = False
Set xNewDoc = Documents.Add(Visible:=False)
xDoc.Content.WholeStory
xDoc.Content.Copy
xNewDoc.Content.PasteAndFormat wdFormatOriginalFormatting
With xNewDoc
xPageCount = .ActiveWindow.Panes(1).Pages.Count
L1: xSplit = InputBox("The document contains " & xPageCount & " pages." & _
vbCrLf & vbCrLf & " Please enter the page count you want to split:", "Kutools for Word", xSplit)
If Len(Trim(xSplit)) = 0 Then Exit Sub
Set xRegEx = New RegExp
With xRegEx
.MultiLine = False
.Global = True
.IgnoreCase = True
.Pattern = "[^0-9]"
End With
If xRegEx.Test(xSplit) = True Then
MsgBox "Please enter the page number:", vbInformation, "Kutools for Word"
Exit Sub
End If
If VBA.Int(xSplit) >= xPageCount Then
MsgBox "The number is greater than the document number." & vbCrLf & "Please re-enter", vbInformation, "Kutools for Word"
GoTo L1
End If
xDocName = xDoc. Name
xFileExt = VBA.Right(xDocName, Len(xDocName) - InStrRev(xDocName, ".") + 1)
xDocName = Left(xDocName, InStrRev(xDocName, ".") - 1) & "_"
xFilePath = xFilePath & xDocName
For xCount = 0 To Int(xPageCount / xSplit)
xPageCount = .ActiveWindow.Panes(1).Pages.Count
If xPageCount > xSplit Then
xLast = xSplit
Else
xLast = xPageCount
End If
Set xRngSplit = .GoTo(What:=wdGoToPage, Name:=xLast)
Set xRngSplit = xRngSplit.GoTo(What:=wdGoToBookmark, Name:="\page")
xRngSplit.Start = .Range.Start
xRngSplit.Cut
Documents.Add
Selection.Paste
ActiveDocument.SaveAs FileName:=xFilePath & xCount + 1 & xFileExt, AddToRecentFiles:=False
ActiveWindow.Close
Next xCount
Set xRngSplit = Nothing
xNewDoc.Close wdDoNotSaveChanges
Set xNewDoc = Nothing
End With
Application.ScreenUpdating = True
End Sub
3。 粘贴上面的代码后,仍然在 Microsoft Visual Basic应用程序 窗口,请点击 工具 > 参考资料,然后弹出 参考项目 对话框,检查 Microsoft VBScript正则表达式5.5 在选项 可用参考 列表框,请参见屏幕截图:
4。 然后点击 OK 按钮,然后按 F5 运行此代码的关键,以及 浏览文件夹 显示对话框,请选择要在其中放置拆分文件的文件夹,请参见屏幕截图:
5。 然后点击 OK按钮,并弹出另一个提示框,提醒您输入要作为分割依据的页数,请参见屏幕截图:
6。 然后点击 OK 按钮,活动的Word文档每10页被拆分成几个单独的文件,您可以转到指定的文件夹以查看结果:
每隔10或n页将Word文档拆分为单独的文件,具有惊人的功能
Kutools for Word 包括强大的功能- 分裂 使用此工具,您可以根据Heading1,分页符,分节符和页面将大型Word文档快速拆分为多个单独的文件。
提示:申请这个 分裂 功能,首先,您应该下载 Kutools for Word,然后快速轻松地应用该功能。
安装后 Kutools for Word,请这样做:
1。 点击 Kutools 加 > 分裂,请参见屏幕截图:
2。 在弹出的对话框中,请根据需要设置以下操作,请参见屏幕截图:
3。 完成设置后,请点击 OK,整个文档将根据每个页面分为多个文件,请参见屏幕截图:
点击下载Kutools for Word并立即免费试用!
最佳办公生产力工具
Kutools for Word - 通过 Over 提升您的文字体验 100 显着特点!
深入了解下面突出显示的功能或 单击此处探索 Kutools for Word 的全部功能.
📘 文档掌握: 分页 / 合并文件 / 以各种格式导出选择(PDF/TXT/DOC/XLSX) / 批量转换为PDF / 将页面导出为图像 / 一次打印多个文件 ...
✏ 内容编辑: 批量查找和替换跨多个文件 / 调整所有图片的大小 / 转置表行和列 / 将表格转换为文字 ...
🧹 轻松清洁: 扫开 多余的空间 / 分节符 / 所有标题 / 文本框 / 超链接 / 如需更多删除工具,请前往我们的删除组
➕ 创意插入: 插页 千位分隔符 / 复选框 / 单选按钮 / 二维码 / 条码 / 对角线表 / 公式标题 / 图片说明 / 表标题 / 多张图片 / 在我们的插入组中发现更多信息
🔍 精准选择: 精确定位特定页面 / 表 / 形状 / 标题段落 / 使用我们的选择组轻松导航
⭐ 星级增强: 快速导航至任何位置 / 自动插入重复文本 / 在文档窗口之间无缝切换 / 11 转换工具 ...
使用 Kutools 转换您的 Word 任务。 👉 立即下载并试用 30 天 🚀。
了解更多 免费下载 购买