Bonjour à tous,
@aksool, comme tu indiques que ta version est 2019, j'en déduis que tu es sur Mac (où la librairie contenant le dictionnaire n'est pas disponible).
voici une alternative, à lancer via alt-f8
Sub aargh()
Dim mots(10000, 0), ctr(10000, 0) 'à adapter le nombre max de mots si nécessaire
Set plagetexte = Range("A1:A2") ' à adapter plage des cellules contenant les phrases à analyser
Set plageresultat = Sheets("sheet2").Range("A1") 'à adapter adresse de la première cellule de la plage dans laquelle mettre le résultat
For Each phrase In plagetexte
t = LCase(phrase.Value)
For i = 1 To Len(t) 'excellente idée piquée à x-cellus pour se débarrasser d'un grand nombre de caractères de ponctuation rapidement
If Mid(t, i, 1) < "A" Then Mid(t, i, 1) = " "
Next i
t = Trim(t)
tt = Split(t)
For i = LBound(tt) To UBound(tt)
If tt(i) <> "" Then increment tt(i), mots, ctr
Next i
Next
plageresultat.Cells(1, 1).Resize(ctr(0, 0) + 1, 1) = mots
plageresultat.Cells(1, 2).Resize(ctr(0, 0) + 1, 1) = ctr
End Sub
Sub increment(mot, table, ctr)
'ajouter 1 au compteur du mot, ajouter le mot s'il n'existe pas
For i = 1 To ctr(0, 0)
If table(i, 0) = mot Then
ctr(i, 0) = ctr(i, 0) + 1
Exit Sub
End If
Next i
ctr(0, 0) = i
table(i, 0) = mot
ctr(i, 0) = 1
End Sub