【发布时间】:2012-01-26 05:16:58
【问题描述】:
我需要遍历整个 word 文档并读取突出显示的文本,以便我可以在我的 XML 文件中搜索突出显示的内容并将其替换为 XML 文件中的对应值。
我已经弄清楚如何将我的 XML 文件解析为 DOM 并搜索我需要的值。
我仍然对 VBA 代码进行排序以循环遍历整个 word 文档并读取突出显示文本的内容,以便我可以与我的 xml 文件进行比较。
【问题讨论】:
我需要遍历整个 word 文档并读取突出显示的文本,以便我可以在我的 XML 文件中搜索突出显示的内容并将其替换为 XML 文件中的对应值。
我已经弄清楚如何将我的 XML 文件解析为 DOM 并搜索我需要的值。
我仍然对 VBA 代码进行排序以循环遍历整个 word 文档并读取突出显示文本的内容,以便我可以与我的 xml 文件进行比较。
【问题讨论】:
这是适合您的完美解决方案。我已经编写了这个宏代码并进行了测试。 http://blog.haneefputtur.com/2012/02/macro-to-extract-highlighted-words-from.html
【讨论】:
您将需要遍历 word 文档中的所有单词并检查每个单词是否突出显示。
当您找到一个突出显示的单词时,然后使用您已经必须查看 XML 中的单词列表的代码来获取文档中所选单词的替换和副词。
这是一个快速示例。
Sub GetHighlightedWords()
Dim doc As Document
Set doc = ActiveDocument
Dim SelectedWord As String
For i = 1 To doc.Range.Words.Count
If doc.Range.Words(i).HighlightColorIndex > 0 Then
SelectedWord = doc.Range.Words(i)
'This is where you would go to your XML document and pickup a replacement word and subtitude it for the selected word.'
Debug.Print SelectedWord
End If
Next
End Sub
【讨论】: