Вы захотите пройтись по всем Словам в документе 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