At its simplest:
Code:
Sub Demo()
Application.ScreenUpdating = False
Dim StrRep As String, i As Long
StrRep = "red|white|blue"
With ActiveDocument.Range.Find
.ClearFormatting
.Replacement.ClearFormatting
.Forward = True
.Wrap = wdFindContinue
.MatchWildcards = True
.Text = "<VAR>"
For i = 0 To UBound(Split(StrRep, "|"))
.Replacement.Text = Split(StrRep, "|")(i)
.Execute Replace:=wdReplaceOne
.Execute Replace:=wdReplaceOne
Next
End With
Application.ScreenUpdating = True
End Sub
For a similar macro that would contain your replacments in a list in a separate document, see:
https://www.msofficeforums.com/132829-post2.html