如何将多个Word文档合并
方法一:手动复制粘贴
- 打开所有需要合并的Word文档。
- 创建一个新的Word文档作为主文档。
- 依次选择每个源文档的内容,按住Ctrl+C复制。
- 切换到主文档,按下Ctrl+V粘贴。
- 调整格式,保持整体一致。
注意事项:
- 如果文档中包含图片或表格,可能需要重新调整布局。
- 如果文档有页眉、页脚或目录,可能需要重新生成。
方法二:使用批量合并脚本
适用于需要合并大量文档的用户。
在Word的VBA编辑器中添加以下代码:
代码一:
Sub 合并Word文档()
Dim dialog As FileDialog
Set dialog = Application.FileDialog(msoFileDialogFolderPicker)
dialog.InitialFileName = "选择文件夹"
dialog.AllowMultiSelect = False
If dialog.Show = -1 Then
folderPath = dialog.SelectedItems(1)
Else
MsgBox "您没有选择文件夹"
Exit Sub
End If
Dim fileName As String
fileName = Dir(folderPath & "\*.docx")
While fileName <> ""
Application.Documents.Open folderPath & "\" & fileName
Selection.WholeStory
Selection.Copy
Documents(1).Activate
Selection.EndKey Unit:=wdStory
Selection.Paste
Application.Documents(2).Close
fileName = Dir()
Wend
End Sub
代码二(推荐)
Sub CountPagesOfDocs()
Dim fd As FileDialog
Dim aDoc As Document
Dim i As Long
Dim count As Long
Dim nPageNumber As Long
Dim originalWindowName As String
originalWindowName = ActiveWindow.Caption
nPageNumber = 0
Set fd = Application.FileDialog(FileDialogType:=msoFileDialogOpen)
With fd
.AllowMultiSelect = True
.Title = "请选择要处理的一个或多个 Word 文档"
.Filters.Add "Word 文档", "*.doc; *.docx", 1
If .Show = -1 Then
count = .SelectedItems.count
For Each vrtSelectedItem In .SelectedItems
Set aDoc = Documents.Open(vrtSelectedItem)
With ActiveDocument
Selection.WholeStory
Selection.Copy
nPageNumber = nPageNumber + .ComputeStatistics(wdStatisticPages)
.Close SaveChanges:=False
End With
Windows(originalWindowName).Activate
Selection.PasteAndFormat (wdFormatOriginalFormatting)
ActiveDocument.Save
Next
MsgBox "已合并 " & count & " 个 Word 文档:共 " & nPageNumber & " 页"
End If
End With
End Sub
使用方法:
先将主文档另存为。docm格式,再打开
- 按下Alt+F11打开VBA编辑器。
- 添加新模块,粘贴上述代码。
- 返回Word,按F5运行脚本。
- 选择包含所有Word文档的文件夹,自动完成合并。
以上对MS有效;
别从快速访问进入文件夹,会导致合并失败,原因不明;
有编程基础的C友直接用就行;
后续我会写小白教程。