用word vba 提取一篇文章中所有标题1的文字内容该如何编码

具体如何实现呢 本人有点笨希望大神指导一下如何实现这个功能谢谢大佬们了

这是不是VBA

你用录制宏不就好了吗

WordVBA:根据标题样式提取相应内容(至新文档)

一 代码

Sub 根据标题样式提取对应内容()
    Dim aDoc As Document, pa As Paragraph, newDoc As Document, arr(), i As Integer
    Set aDoc = ActiveDocument
    For Each pa In aDoc.Paragraphs
        If pa.Style = "标题 1" Then
            ReDim Preserve arr(i)
            arr(i) = pa.Range.Text
            i = i + 1
        End If
    Next
    Set newDoc = Documents.Add
    With newDoc
        .SaveAs2 aDoc.Path & "/" & Left(aDoc.Name, Len(aDoc.Name) - Len(Split(aDoc.Name, ".")(UBound(Split(aDoc.Name, ".")))) - 1) & "-标题1内容.docx"
        For i = LBound(arr) To UBound(arr)
            .Content.Select
            With Selection
                .Collapse 0
                .InsertAfter arr(i)
                Debug.Print arr(i)
            End With
        Next
        .Close wdSaveChanges
    End With
    Set newDoc = Nothing
    Set aDoc = Nothing
End Sub

二 执行效果
打开原始文档 执行代码

img


执行完成 原始文件路径下会生成如下新文件

img


打开新文件 里面内容如下:正是原始文件中的所有样式为”标题1“的段落的内容

img

如果有任何【Office办公应用/VBA办公自动化】的问题 欢迎和我沟通哈