VBA Microsoft Word - números secuenciales

He hecho esto manualmente donde quiero reemplazar cada instancia de ZXZ con un número secuencial que comienza desde 1 hasta la última aparición de ZXZ en el documento de Word.

Básicamente, lo que intento lograr es ejecutar una macro VBA de palabra dentro de un documento de palabra específico, donde la macro VBA comienza a buscar desde la parte superior del archivo buscando cada aparición de ZXZ, reemplaza la primera aparición de ZXZ con "1 "y luego la siguiente aparición con" 2 "secuencialmente hasta que se encuentre el último ZXZ en un documento de Word.

Ejemplo de documento de Word podría contener:

elemento ZXZ elemento ZXZ ... elemento ZXZ

después de ejecutar la macro de palabra vba, me gustaría terminar con:

elemento 1 elemento 2 ... elemento 25

He hecho esto con este código, pero me gustaría hacer un bucle "while" o algo que encuentre cada aparición de ZXZ y la reemplace con números secuenciales que comiencen por "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

'' '' Básicamente sigo repitiendo el código anterior hasta llegar a 25, que generalmente es cuántas instancias de ZXZ existen en cada documento.