View Single Post
  #4   Report Post  
Posted to microsoft.public.word.docmanagement
Graham Mayor Graham Mayor is offline
external usenet poster
 
Posts: 19,312
Default Word 2007 Search for multiple words in 1 document

If by 'highlighting' you mean 'selecting' then it is only possible to do so
one at a time.

Sub FindWords()
Dim vFindText
Dim r As Range
Dim i As Long
vFindText = Array("dog", "cat", "pig", "horse")
For i = 0 To UBound(vFindText)
Set r = ActiveDocument.Range
With r.Find
.Text = vFindText(i)
Do While .Execute(Forward:=True) = True
r.Select
MsgBox r
Loop
End With
Next
End Sub

If however you mean highlighting as in adding a coloured background, then
that is easy enough to achieve using a macro

Sub HiLightList()
Dim vFindText
Dim r As Range
Dim i As Long
vFindText = Array("dog", "cat", "pig", "horse")
For i = 0 To UBound(vFindText)
Set r = ActiveDocument.Range
With r.Find
.Text = vFindText(i)
Do While .Execute(Forward:=True) = True
r.HighlightColorIndex = wdYellow
Loop
End With
Next
End Sub

http://www.gmayor.com/installing_macro.htm

--

Graham Mayor - Word MVP

My web site www.gmayor.com
Word MVP web site http://word.mvps.org




tj7 wrote:
I would just want them highlighted in some manner. Basically
searching for a few needles in a large haystack and they may or may
not be there.
Thanks
TJ

"Graham Mayor" wrote:

You can do so in an open document with a macro. What would you want
to do with the words having found them?

--

Graham Mayor - Word MVP

My web site www.gmayor.com
Word MVP web site http://word.mvps.org



tj7 wrote:
Is there anyway to search for multiple words in Word even if only 1
of them is present?

i.e. search for Dog or cat or pig or horse.