Compter des occurences lexicales

Bonjour,

J'ai un fichier excel qui comporte 500 lignes en feuil1.

Je cherche à compter le nombre de fois où certains mots apparaissent, sachant que si le mot recherché apparait plusieurs fois sur une même ligne, la ligne ne sera comptée qu'une seule fois.

Je souhaiterai que le tableau d’occurrence apparaisse sur un nouvel onglet que je souhaiterai nommer "occurence".

Ex. de mots que je cherche :"Java", "XML"

J'ai un début de macro, mais elle ne fonctionne pas (et je ne sais pas où créer l'onglet de destination)

Pouvez-vous m'aider à la finaliser ? Merci

Sub Occurence ()

Dim Message As String, Titre As String, Texte As String

Dim Cel As Range

Dim Compteur As Long

'Définit le message.

Message = "Java"

'Définit le titre.

Titre = "Recherche"

'Affiche le message et le titre.

Texte = InputBox(Message, Titre)

'Recherche le texte dans la plage utilisée de la feuille "Feuil1"

With Worksheets("Feuil1") 'A adapter

For Each Cel In .UsedRange

If UCase(Cel) = UCase(Texte) Then Compteur = Compteur + 1

Next

End With

MsgBox "Le texte " & Texte & " a été trouvé " & Compteur & " fois"

End Sub

Bonjour CaroVBA,

J'ai développé précédemment une solution qui pourrait répondre à ton besoin. Peux-tu me joindre un fichier d'exemple pour que je teste et adapte mon programme?

Voila

14testocc2.xlsx (10.02 Ko)

Une proposition

9testocc2.xlsm (20.62 Ko)

Les données prises en compte vont de E2 à E999

ATTENTION, il faut activer les références:

Microsoft Scripting Runtime

Microsoft VBScript Regular Expressions (5.5 ou le plus proche)

Rechercher des sujets similaires à "compter occurences lexicales"