当前位置: 首页 > news >正文

如何将多个Word文档合并

方法一:手动复制粘贴
  1. 打开所有需要合并的Word文档。
  2. 创建一个新的Word文档作为主文档。
  3. 依次选择每个源文档的内容,按住Ctrl+C复制。
  4. 切换到主文档,按下Ctrl+V粘贴。
  5. 调整格式,保持整体一致。

注意事项:

  • 如果文档中包含图片或表格,可能需要重新调整布局。
  • 如果文档有页眉、页脚或目录,可能需要重新生成。
    在这里插入图片描述
方法二:使用批量合并脚本

适用于需要合并大量文档的用户。

在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格式,再打开

  1. 按下Alt+F11打开VBA编辑器。
  2. 添加新模块,粘贴上述代码。
  3. 返回Word,按F5运行脚本。
  4. 选择包含所有Word文档的文件夹,自动完成合并。

以上对MS有效;
别从快速访问进入文件夹,会导致合并失败,原因不明;
有编程基础的C友直接用就行;
后续我会写小白教程。

http://www.dtcms.com/a/123040.html

相关文章:

  • 【HTML】动态背景效果前端页面
  • 基于 Qt4 的图片处理工具开发(二):增加对比度调节、界面布局优化、多线程操作
  • 初识Redis · 简单理解Redis
  • 使用注解@RequestBody变红的解决问题
  • 【spark认任务提交】配置优先级顺序
  • 银河麒麟v10(arm架构)部署Embedding模型bge-m3【简单版本】
  • 【C++进阶】关联容器:multimap类型
  • 学习海康VisionMaster之四边形查找
  • 【达梦数据库】bash: /dev/null: Permission denied
  • 使用stm32cubeide stm32f407 lan8720a freertos lwip 实现tcp客户端、服务端及网络数据转串口数据过程详解
  • SQL 关键字
  • 低硬件资源微调预训练Mamba模型的方法
  • 在 transformers 中,return_tensors=‘pt‘ 里的 pt 是什么 tf,np
  • gdal_shp文件的组成
  • 【设备连接涂鸦阿里云】
  • [数据结构]Trie字典树
  • RocketMQ和kafka 的区别
  • 算法导论(递归回溯)——⼆叉树中的深搜
  • lanqiaoOJ 498 回文日期
  • ValueError: Cannot handle batch sizes > 1 if no padding token is defined`
  • 数据结构(五)——AVL树(平衡二叉搜索树)
  • 【Python语言基础】17、继承
  • 深入理解 Spring 的 MethodParameter 类
  • 测试的分类
  • OpenCV 图形API(25)图像滤波-----均值滤波(模糊处理)函数blur()
  • 写一个简单的demo来理解数据库外键
  • Java中的参数是值传递还是引用传递?
  • webpack配置导致浏览器自动刷新
  • Pytest+Allure+Excel接口自动化测试框架实战
  • 【Kafka基础】监控与维护:分区健康检查,确保数据高可用