Tienes varias maneras:
Sin que tengas que cambiar nada del programa que usas como ejemplo, es meter las palabras en un array y luego comparar y obtener el índice: 
- Dim Index as Integer 
- Dim tmpText(1 To 4) As String 
- tmpText(1) = Text1.Text 
- tmpText(2) = Text2.Text 
- tmpText(3) = Text3.Text 
- tmpText(4) = Text4.Text 
- For Index = 1 To 3 
- If tmpText(4) = tmpText(Index) Then 
- MsgBox ("Texto: " & Index & " está repetido" _ 
- & vbCrLf & "Palabra: " & tmpText(Index)) 
- End If 
- Next Index 
Otra forma  es crear una 
Matriz de controles, que consiste en crear un control y llamarlo 
txtPalabra, por ejemplo y en 
Propiedades del control establecer en la propiedad 
Index, el valor 0, después copia el control en el formulario y pega de nuevo, automáticamente se crea otro control idéntico con el 
Index=1, si copias y pegas otro tendrá 
Index=2....
También puedes copiar y pegar directamente y VB te preguntará si deseas crear una matriz de controles le dices que sí y listo, cada vez que lo copies y pegues se irá añadiendo un índice. 
Luego para comparar haces lo siguiente:
- Dim Index as Integer 
- For Index = 0 To 2 
- If txtPalabra(3).Text = txtPalabra(Index).Text Then 
- MsgBox ("Texto: " & Index & " está repetido" _ 
- & vbCrLf & "Palabra: " & txtPalabra(Index)) 
- End If 
- Next Index 
El primer control de texto en este caso tiene el Indice = 0
txtPalabra(0)
txtPalabra(1)
txtPalabra(2)
txtPalabra(3)
txtPalabra(3)  sería el cuarto.