Compter occurences d'un caractère (excel) [Résolu/Fermé]

Signaler
Messages postés
341
Date d'inscription
lundi 20 avril 2009
Statut
Membre
Dernière intervention
6 mars 2017
-
 toy -
Bonjour,

Sur Excel 2003, je souhaite compter dans une cellule donnée, le nombre d'occurrence d'apparition d'une suite de caractères.
J'ai cherché à le faire avec RECHERCHE, mais ce n'est manifestement pas la bonne solution.
Quelqu'un pourrait-il m'apporter son aide ?

Merci !

12 réponses

Messages postés
17142
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
25 juillet 2020
4 147
Salut,

Je ne sais pas si j'ai tout bien compris,

Si tu souhaites compter le nombre de carractères dans une cellule A1, la formule est

=NBCAR(A1)


Pour compter le nombre de R par exemple, la formule est

=SOMMEPROD((NBCAR(A1)-NBCAR(SUBSTITUE(A1;"R";""))))



Ou compter les caractères différent de R

=NBCAR(SUBSTITUE(A1;"R";""))





A+
56
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 57516 internautes nous ont dit merci ce mois-ci

J'ai utilisé aussi la formule pour compter le nombre de "1" dans une cellule texte. Ca marche très bien, merci.
merci, super boulot.
Sommeprod ne sert à rien non ?
Merci pour l'info , ca m a sauvé la vie .
Messages postés
6
Date d'inscription
samedi 21 juin 2008
Statut
Membre
Dernière intervention
7 octobre 2012
31
Et celle-là ? :
Nombre de fois "x" dans A2
=NBCAR(A2)-NBCAR(SUBSTITUE(A2;"x";""))

Bonjour,
J'ai le même souci que cet internaute. J'ai essayer cette formule qui fonctionne très bien pour un caractère unique mais qui s'avère inneficace lorsque l'on cherche à isoler une chaine de caractères.

Exemple: je souhaite compter le nombre de fois que je vois la suite de caractère "expl", la formule va me compter le nombre carré de la cellule en excluant cette chaine de caractère et me donner une valeur supérieure à 1 si je n'ai qu'une fois cette occurence dans ma cellule (alors que je veux qu'il me dise =1 dans ce cas)...

J'espère que mon explication est assez claire, si oui, est-ce que qu'elqu'un aurait une solution à me proposer?

Thanks in advance :)
Messages postés
17142
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
25 juillet 2020
4 147
Salut,

Tu aurais du ouvrir ta propre discussion en développant ton problème plus clairement.
Pour ma part j'ai du mal à suivre mais cette formule si j'ai un minimum capté ton problème devrait te donner le résultat

=NB.SI(A1;"*expl*")
Messages postés
379
Date d'inscription
mardi 5 octobre 2010
Statut
Membre
Dernière intervention
1 juillet 2020
8
Merci Mike
Simple, efficace et toujours d'actualité
Messages postés
17142
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
25 juillet 2020
4 147
Re

Regardes avec cette formule pour compter les FD de la plage A1 à A50

=NB.SI(A1:A50;"*FD*")

A+
Messages postés
17142
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
25 juillet 2020
4 147
Re,

tu as également plus complexe, cette formule

=SOMME(NBCAR(E31)-NBCAR(SUBSTITUE(E31;"FD";"")))/NBCAR("DF")

A+
Messages postés
2
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
9 mai 2012
2
Bonjour,

Je me permets de continuer cette conversation car je n'arrive pas à résoudre le problème que je rencontre (malgré le fait que je cherche désespérément depuis des heures...) :-/

Voici ma plage de données (A1 à A5) :

Trop d'offres sont proposées
La description des offres n'est pas assez claire
Le défilement sur la page d'accueil est trop rapide
Les offres ne sont pas intéressantes
Autres

Je cherche à connaître le nombre de fois que le mot "offres" apparaît dans ma liste.

J'ai écrit cette formule :
=SOMME(NBCAR(A2:A5)-NBCAR(SUBSTITUE(A2:A5;"offres";"")))/NBCAR("offres")

mais dans ma cellule apparaît cette erreur "#VALEUR!"

Pouvez-vous m'aider ? :-/
Messages postés
17142
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
25 juillet 2020
4 147
Salut,

tu aurais du ouvrir ta propre discussion et non relancer cette ancienne.

si le mot offres est seul dans ta plage de A1 à A50

=NB.SI(A1:A50;"offres")

si le mot offres précéde une chaine
=NB.SI(A1:A50;"offres*")

si le mot offres est en fin de chaine
=NB.SI(A1:A50;"*offres")

et si le mot offres est dans la chaine
=NB.SI(A1:A50;"*offres*")
Messages postés
2
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
9 mai 2012
2
Merci beaucoup. Ce n'était pas si compliqué finalement !
merci beaucoup ca marche
Messages postés
17142
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
25 juillet 2020
4 147
Re,

C'est pareil, tu identifies ta cellule A1 par exemple et le résultat est 1 si la cellule contient RFD-02
et 0 pour RFCD-07 par exemple

=NB.SI(A1;"*FD*")

A+
c'est normal de diviser par 2
à chaque occurence tu enlèves 2 caractères
donc forcément la différence de nombre de caractères entre l'initial et après la substitution et 2 fois trop grand
le résultat est à diviser non pas par 2 mais par le nombre de caractères que tu vires
Messages postés
341
Date d'inscription
lundi 20 avril 2009
Statut
Membre
Dernière intervention
6 mars 2017
49
Merci !

=SOMMEPROD((NBCAR(A1)-NBCAR(SUBSTITUE(A1;"R";"")))) me permet de m'approcher du résultat.
mais comment se fait-il que ça me donne toujours le double du nombre d'occurrences que j'ai vraiment ?
Messages postés
17142
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
25 juillet 2020
4 147
Re,

Donnes nous le contenu d'une cellule et ce que tu souhaites optenir comme résultat

A+
Messages postés
341
Date d'inscription
lundi 20 avril 2009
Statut
Membre
Dernière intervention
6 mars 2017
49
Et voici :
Contenu d'une cellule :
RFD-02
RFD-03
RFD-04
RFD-05 = RG-SYN-SIN4
RFD-06
RFD-08
RFD-30
RFD-07

Formule actuelle :
=(NBCAR(L19)-NBCAR(SUBSTITUE(L19;"FD";"")))/2

Résultat attendu : 8.

Vous remarquerez le subtil "/2" qui est le seul moyen que j'aie trouvé pour obtenir des résultats justes...
Merci !
Messages postés
341
Date d'inscription
lundi 20 avril 2009
Statut
Membre
Dernière intervention
6 mars 2017
49
Re,

Ta formule fonctionne, mais pour une plage de cellules.
Ce que je cherche, c'est à compter les occurrences de caractères au sein d'une seule cellule...
Messages postés
341
Date d'inscription
lundi 20 avril 2009
Statut
Membre
Dernière intervention
6 mars 2017
49
Youhou !!

On y est, c'est la bonne formule !!

Je te remercie vraiment. Bonne soirée !
plutôt que de diviser par la taille du mot cherché, il suffit de remplacer le mot cherché non pas par une chaîne vide mais par un seul caractère quelconque....

=SOMMEPROD((NBCAR(A1)-NBCAR(SUBSTITUE(A1;"R";"x"))))