Classement du nombre d'occurrence de mots

Bonjour à tous,

Voici mon problème : je souhaiterais traiter les résultats d'une enquête retranscrits sous Excel, et plus particulièrement la partie "suggestions d’améliorations", qui est un champ libre.

J'aimerais donc premièrement débuter en faisant un "top 10" des mots les plus utilisés et voir combien de fois ils apparaissent (facile à faire avec NB.SI mais quand le mot est identifié, là ce n'est pas forcément le cas...)

Puis ensuite si possible regarder quels mots sont liés dans chaque cellule.

Y'a-t-il une fonction VBA qui puisse faire ça ?

Merci !!

Bonjour julking92,

Tu aimerais dans un texte; "le ciel est beau et on est jeudi" en extraire

le -> 1

ciel -> 1

est -> 2

C'est ça ce que tu souhaites? (en supprimant évidemment les mots usuels type "le" "est" "et" "a" "à" etc..)

Si c'est bien cela, peut-tu envoyer un fichier d'exemple ou au moins un texte d'exemple?

Sans dictionnaire des mots recherchés, il faudra rechercher tous les mots...

Oui c'est exactement le résultat souhaité, en supprimant évidemment les mots usuels pour avoir uniquement les mots structurants...

Je ne peux pas envoyer de données car elles sont confidentielles, mais l'idée est justement d'avoir quelque chose de générique applicable à 5 comme à 10 000 cellules, donc a priori pas besoin de dictionnaire de mots à rechercher..

....et merci beaucoup pour ton intérêt

Voilà une proposition.

38julking92.xlsm (20.72 Ko)

Il y aura forcément des mots usuels à rajouter, et ça se fait dans cette ligne de code:

listeMotsSupprimer = Array("de", "a", "est", "et", "ou", "donc", "ni", "car", "avec", "sans", "un", "une", "des")

Suffit de respecter la syntaxe!

Voilà une version améliorée (wikipédia comme source de test c'est pas mal )

65julking92v2.xlsm (21.92 Ko)

C'est exactement le fonctionnement que je voulais, sauf qu'il faudrait que ce soit applicable à un nombre variable de lignes (pour mon cas 15 000)... (toutes les données sont sur la même colonne)

Moi qui croyais toucher un peu en macro, je ne comprends pas grand chose à ton code...

Merci beaucoup en tout cas !

Voilà une nouvelle proposition.

119julking92v3.xlsm (22.41 Ko)

Il faudra éditer la partie suivante de code:

Sub test()
Dim chaine As String
rechercheMots Feuil1.Range("C7:C8")
End Sub

Merci beaucoup, c'est exactement ce que je recherchais...!

Rechercher des sujets similaires à "classement nombre occurrence mots"