Compter le nombre de fois ou le mot apparaît dans une ligne

Fermé
iaetlse Messages postés 2 Date d'inscription mardi 9 décembre 2014 Statut Membre Dernière intervention 9 décembre 2014 - 9 déc. 2014 à 12:13
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 - 9 déc. 2014 à 14:15
Bonjour,

Etant débutante sur VBA, je dois compter le nombre de fois ou le mot "séance" apparaît dans la ligne 5 de ma page "notes DROIT" Je n'arrive vraiment pas à trouver ce qu'il faut utiliser. J'ai essayer la fonction countif et faire un DO LOOP mais rien ne marche.

Quest ce que je dois faire ?

Merci de votre aide !!!

3 réponses

jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
9 déc. 2014 à 12:21
Bonjour,

Etant débutante sur VBA

Je déplace ta question dans la section VBA du forum.

Par contre.. tu ne nous dis pas sur quel logiciel tu travailles...
Word ? Excel ? ....

En tous cas.. si tu sais déjà récupérer la phrase, tu peux ensuite lui associer cette fonction pour connaitre le nombre d'occurrences de ton mot :
Public Function NbOccurrenceMot(strPhrase As String, strMot As String) As Integer
    Dim strTab() As String
    strTab = Split(strPhrase, strMot)
    NbOccurrenceMot= UBound(strTab())
End Function

0
iaetlse Messages postés 2 Date d'inscription mardi 9 décembre 2014 Statut Membre Dernière intervention 9 décembre 2014
9 déc. 2014 à 13:03
Merci pour la réponse,

Je travaille sur Excel pardon !
Et non je ne sais pas comment récupérer la phrase, j'ai vraiment du mal à comprendre le fonctionnement de VBA, et tout ce que j'ai essayé de faire ne fonctionne pas...
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 4 650
9 déc. 2014 à 14:15

je ne sais pas comment récupérer la phrase

Et bien..il faut que tu nous en dise plus....

Cette phrase.. se trouve
- dans une feuille (un onglet de ton classeur) : Laquelle ?
- Dans une cellule ? Laquelle ?


Ensuite...il te suffit de faire :

Sub getNbOccurrenceMot()

Dim Feuille As Worksheet
Dim Phrase As String
Dim Cellule As Range
Dim strMot As String
    strMot = "Mot_a_chercher"

Set Feuille = Sheets("nom_de_la_feuille")
Set Cellule = Range("A1") ' cellule contenant la phrase
Phrase = Cellule.Value

MsgBox NbOccurrenceMot(Phrase, strMot)

End Sub

Public Function NbOccurrenceMot(strPhrase As String, strMot As String) As Integer
    Dim strTab() As String
    strTab = Split(strPhrase, strMot)
    NbOccurrenceMot = UBound(strTab())
End Function



0