salve
Riadattando e semplificando una macro esistente, questo che segue è il risultato:
Sub ParoleRipetute()
Dim Parola As String
Dim Parole(10000) As String
Dim NrParole As Integer
Dim Esclusioni As String
Dim Trovato As Boolean
Dim n As Integer
Esclusioni = "il,lo,la,le,i,gli,un,uno,una,di,a,da,in,con,su,per,tra,fra,del,della,dello,se,ho,ha,è"
Selection.HomeKey Unit:=wdStory
System.Cursor = wdCursorWait
NrParole = 0
For Each AW In ActiveDocument.Words
Parola = Trim(AW)
If Parola < "A" Or Parola > "z" Then Parola = ""
If InStr(Esclusioni, Parola) Then Parola = ""
If Len(Parola) > 0 Then
Trovato = False
For n = 1 To NrParole
If Parole(n) = Parola Then
Trovato = True
AW.Font.ColorIndex = 6
Exit For
End If
Next n
If Not Trovato Then
NrParole = NrParole + 1
Parole(NrParole) = Parola
End If
End If
Next AW
End Sub
Come puoi vedere, ti ho messo come esclusi dalla ricerca (articoli,preposizioni, ed alcuni verbi di uso comune)
puoi estendere la lista come vuoi mantenendo la sintassi della riga della macro. Ho anche considerato un valore massimo di parole del documento (10000) cambialo come ti pare. Le parole ripetute verranno contrassegnate con il carattere rosso.
saluti
Andrea