VBA Microsoft Word - números sequenciais

Fiz isso manualmente onde quero substituir todas as instâncias do ZXZ por um número seqüencial que comece de 1 até a última ocorrência do ZXZ no documento do word.

Basicamente, o que estou tentando obter é executar uma macro VBA do Word em um documento do Word específico, onde a macro VBA começa a pesquisar na parte superior do arquivo, procurando por cada ocorrência de ZXZ, substituindo a primeira ocorrência de ZXZ por "1" e, em seguida, na próxima ocorrência com "2" sequencialmente até o último ZXZ encontrado em um documento do word.

Exemplo de documento do Word pode conter:

elemento ZXZ elemento ZXZ ... elemento ZXZ

depois de executar a macro vba word, gostaria de terminar com:

elemento 1 elemento 2 ... elemento 25

Eu fiz isso com esse código, mas gostaria de fazer um loop "while" ou algo que encontre cada ocorrência de ZXZ e substitua-o por números sequenciais a partir de "1"

    Sub my_prov_MDList()
'
' my_prov_MDList Macro
'
'
    Selection.MoveUp Unit:=wdScreen, Count:=7
    Selection.HomeKey Unit:=wdLine
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "ZXZ"
        .Replacement.Text = "1"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute
    With Selection
        If .Find.Forward = True Then
            .Collapse Direction:=wdCollapseStart
        Else
            .Collapse Direction:=wdCollapseEnd
        End If
        .Find.Execute Replace:=wdReplaceOne
        If .Find.Forward = True Then
            .Collapse Direction:=wdCollapseEnd
        Else
            .Collapse Direction:=wdCollapseStart
        End If
        .Find.Execute
    End With
    With Selection.Find
        .Text = "ZXZ"
        .Replacement.Text = "2"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    With Selection
        If .Find.Forward = True Then
            .Collapse Direction:=wdCollapseStart
        Else
            .Collapse Direction:=wdCollapseEnd
        End If
        .Find.Execute Replace:=wdReplaceOne
        If .Find.Forward = True Then
            .Collapse Direction:=wdCollapseEnd
        Else
            .Collapse Direction:=wdCollapseStart
        End If
        .Find.Execute
    End With

'' '' Basicamente, continuo repetindo o código acima até chegar a 25, que normalmente é quantas instâncias de ZXZ existem em cada documento.

questionAnswers(2)

yourAnswerToTheQuestion