【发布时间】:2026-01-17 03:05:02
【问题描述】:
我有一个 Excel 工作表,其中包含不同标题的列表。这些标题也在 Word 文档中,但在 Word 文档中,也有不必要的信息。 我正在尝试做的并且对我刚刚学习的编码感到抱歉的是:
- 从 Excel 打开 Word 文档
- 扫描 Excel 工作表 A 列的所有标题
- 将标题与 Word 文档中的标题进行比较
- 如果它们相同,则将它们复制到另一个 Word 文档中(完整的段落直到下一个标题 1)
- 如果不相同,可以忽略
- 这应该是一个循环,因此它会扫描它,直到找到并复制 Excel 中的所有标题
到目前为止我尝试的是这样的:
Sub Search_Word_Document()
Dim wrdApp As Word.Application
Dim wrdDoc As Word.Document
Set wrdApp = CreateObject("Word.Application")
wrdApp.Visible = True
Set wrdDoc = wrdApp.Documents.Open("file:///J:\Test.docx")
With ActiveDocument.Content.Find
FindWord = Columns("A:A").Value
With .Style = ActiveDocument.Styles("Heading 1")
wrdApp.Selection.WholeStory
wrdApp.Selection.Find.ClearFormatting
With wrdApp.Selection.Find
.Text = FindWord
.Forward = True
.Style = ActiveDocument.Styles("Heading1")
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = True
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
End Sub
它可以很好地打开文档,但是从列中查找文本绝对不能像查找标题那样工作。 感谢您的帮助。
【问题讨论】: