Nombre d'occurrences d'un mot dans une cellule [Résolu/Fermé]

Signaler
-
 Claude -
Bonjour,
A force de chercher sur les forums je ne trouve que des solutions qui ne correspondent pas à mon besoin, voici donc mon problème :
Je cherche à compter le nombre d'occurrences d'un mot dans une même cellule de texte. Par exemple dans l'exemple suivant le résultat attendu est donc être 3 :
A1 : Retard sur l'étude X + Retard sur l'étude Y + Retard sur l'étude Z.
Or voici le résultat de mes essais et recherches sur la formule nb.si :
=NB.SI(A1;"retard") me renvoie 0
=NB.SI(A1;"*retard*") me renvoie 1
=NB.SI(A1;"&*retard*&") me renvoie 0
=NB.SI(A1;".*retard*.") me renvoie 0
=NB.SI(A1;".*retard.*") me renvoie 0
Quelqu'un aurait-il une idée ?
Je rappelle que je ne cherche pas à compter le nombre de caractères du mot, à connaître la seule présence ou non du mot dans la cellule ou le nombre d'occurrences d'une valeur mais bien d'un mot dans une cellule de texte.
Merci d'avance,

2 réponses

Messages postés
25248
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
29 août 2020
5 434
Bonsoir

NB.SI ne comptera que 1 même si le mot est placé plusieurs fois

voyez avec:

=(NBCAR(A1)-NBCAR(SUBSTITUE(A1;"Retard";"")))/NBCAR("Retard")

bien sur, vous pouvez remplacer Retard entre guillment par l'adresse d'une cellule qui contient le mot cherché

et attention, cette formule est sensible à la acasse, elle comptera Retard avec la majuscule, mais pas s'il est présent técrit autrement
si le cas peut se présenter ou simplement par sécurité, vous pouvez écrire
=(NBCAR(A1)-NBCAR(SUBSTITUE(MAJUSCULE(A1);"RETARD";"")))/NBCAR("RETARD")

ou si le mot Retard est écrit ( avec ou sans majuscule) en cellule Z1 pour l'exemple:
=(NBCAR(A1)-NBCAR(SUBSTITUE(MAJUSCULE(A1);MAJUSCULE(Z1);"")))/NBCAR(MAJUSCULE(Z1))

crdlmnt

Ps : salut Gyrus et excuses, j'ai vu ton message quand j'ai envoyé le mien!

La qualité de la réponse dépend surtout de la clarté de la question, merci!
4
Merci

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez Comment Ça Marche

CCM 61001 internautes nous ont dit merci ce mois-ci

Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
481
Bonsoir Vaucluse,

Tu as bien fait de poster ta réponse.
Coté argumentaire et explications, c'est quand même nettement le niveau au-dessus.
:D

A+
Messages postés
6
Date d'inscription
mardi 21 octobre 2008
Statut
Membre
Dernière intervention
1 décembre 2016
4
Bonjour et merci pour vos deux réponses et votre rapidité.
Cela fonctionne effectivement en majuscule et cela m'a bien dépanné.
Cordialement,
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
481
Bonjour,

Essaie avec :
=(NBCAR(A1)- NBCAR(SUBSTITUE(A1;"Retard";"")))/NBCAR("Retard")

A+
Messages postés
6
Date d'inscription
mardi 21 octobre 2008
Statut
Membre
Dernière intervention
1 décembre 2016
4
Bonjour et merci pour ta réponse. Attention il y a une espace en trop après le premier moins.
Cordialement,
Merci ! Comme en plus les 2 réponses donnent la même solution, on peut la considérer fiable.
Génial: simple et efficace, c'est parfait, merci