Calculer le nb de "x" dans une plage SI "y" est dans une aut

Résolu/Fermé
Razcommentcamarche Messages postés 10 Date d'inscription vendredi 10 janvier 2014 Statut Membre Dernière intervention 1 juillet 2015 - 15 janv. 2014 à 15:41
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 16 janv. 2014 à 13:45
Bonjour à la communauté,

Je viens vers vous pour savoir SI (ahah) quelqu'un(e) aurait une idée pour à afficher le nombre de fois qu'une lettre est utilisée dans une plage de cellules uniquement si un texte existe dans une autre.

Voici ce que je tente d'utiliser :
=NB.SI($M$5:$M$999;"L" uniquement SI($E$5:$E$999;"Texte 1"))

Bien entendu =NB.SI($M$5:$M$999:"L") fonctionne bien, mais je dois afficher le nombre de "L" en fonction de ce qu'il y a dans E5:E999.
De E5 à E999 il peut y avoir "Texte 1"; "Texte 2"; etc...

Je devrai reproduire la formule pour chaque "texte".

Merci pur votre lecture et, par avance, merci pour vos réponses.

Cordialement.

Raz.

9 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 411
16 janv. 2014 à 10:19
Bonjour

essayez la formule:
=NB.SI.ENS(E5:E999;"Texte";C5:C999;"*L*")
qui détecte si la cellule contient dans son texte la lettre placé entre les astérisques

elle prendra en compte L dans toutes les cellules où il est présent
crdlmnt
3
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
16 janv. 2014 à 10:37
Salut Vaucluse,

Bonne année.

J'ai du faire une tite erreur car j'avais testé ta formule sans succès.
J'ai donc cru, à tort, que la formule NB.SI.ENS n'acceptait pas les caractères de substitution.
Mais...
Après avoir lu ta réponse j'ai retenté et... encore une boulette de ma part, elle est parfaite.

Cordialement,
Franck
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 411
16 janv. 2014 à 13:45
Bonne année Pijaku, et merci pour la rectification!
bien cordialement
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
15 janv. 2014 à 16:02
Bonjour,

Après relecture du sujet, et tout particulièrement du titre :
=SOMMEPROD((E5:E999="Texte1")*(M5:M999="L"))
2
skk201 Messages postés 938 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 16 octobre 2016 54
15 janv. 2014 à 15:48
Il y aura surement un moyen avec les macros en utilisant une boucle.

Est-ce que ta plage est fixe ? Et pourquoi effectué cette recherche uniquement quand une autre cellule est remplie ?
0
Raymond PENTIER Messages postés 58678 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 3 octobre 2024 17 204
15 janv. 2014 à 15:50
Bonjour Raz.

afficher le nombre de fois qu'une lettre est utilisée dans une plage de cellules

Tu parles du mot "L" ou de la lettre l faisant partie d'un mot ?
Si j'ai "ALLO" en M5 et "L" en M6 la formule doit donner comme résultat 3 ou 1 ?
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
15 janv. 2014 à 16:00
salut Raymond,

Juste un petit ajout à ta demande de précision, la casse est elle importante?
L Majuscule, minuscule...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Razcommentcamarche Messages postés 10 Date d'inscription vendredi 10 janvier 2014 Statut Membre Dernière intervention 1 juillet 2015
Modifié par Razcommentcamarche le 15/01/2014 à 16:13
Re,

@skk201 :
La plage dans laquelle j'effectue la recherche "Combien il y a-t-il de "L" ?" est déterminée et ne bougera pas.
Et je souhaite afficher le nombre de "L" trouvés uniquement si le "texte 1" est affiché dans une autre plage de cellules.
Ce parce que je reproduirai dans d'autre cas pour le "texte 2" et pour 30 texte différents.

@Raymond PENTIER :
Dans la plage de cellules que je vais vérifier la lettre ne sera affiché qu'une fois par cellule. Il est possible que cette cellule soit remplie par "L;K" mais je ne compterais que les "L" et donc la réponse serait 1.

Mais pour vous donner le contexte qui, je commence à bien m'en rendre compte, peut amener à repenser la chose complètement autrement, je vous propose une petite image d'un tableur :

http://www.hostingpics.net/viewer.php?id=813036excel.png
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 411
15 janv. 2014 à 17:13
Bonsoir

je ne sais pas si vous avez vu ici la réponse de Pijaku qui corresponde parfaitement à priori
https://forums.commentcamarche.net/forum/affich-29510169-calculer-le-nb-de-x-dans-une-plage-si-y-est-dans-une-aut#4

Une autre option, à partir de Excel 2007:
=NB.SI.ENS(E5:E999;"Texte1";M5:M999="L")

(un peu moins gourmande en capacité système si vous multipliez beaucouple nombre de formule)

crdlmnt
0
Razcommentcamarche Messages postés 10 Date d'inscription vendredi 10 janvier 2014 Statut Membre Dernière intervention 1 juillet 2015
16 janv. 2014 à 10:06
Bonjour à tous,

Merci Vaucluse, car la réponse de Frank, AKA pijaku, m'avait échappé.

La formule de pijaku fonctionne bien.
Celle de de Vaucluse aussi, bien qu'il faille remplacer le dernier "=" par ";".
(=NB.SI.ENS(E5:E999;"Texte1";M5:M999;"L")

Les cellules, dans M5:M999, peuvent contenir plusieurs lettres. Ainsi, je cherche à améliorer la formule pour que, si une cellule continent "L;M" alors, les deux lettres soient comptabilisées.
Ce qui donne l'exemple du lien de mon message précédent.

http://www.hostingpics.net/viewer.php?id=813036excel.png

On voit, dans le tableau de résultats, que deux lettres sont comptabilisées pour "Texte 2" et que "M" est comptabilisé deux fois, une fois pour "Texte 1" et une autre pour "Texte 2".

Je cherche de mon côté en attendant. Mais si vous savez comment m'orienter, n'hésitez pas ^_^

Si je trouve, je posterais la formule et marquerais le sujet "Résolu".

Bonne journée à vous.

Raz.
0
Razcommentcamarche Messages postés 10 Date d'inscription vendredi 10 janvier 2014 Statut Membre Dernière intervention 1 juillet 2015
Modifié par Razcommentcamarche le 16/01/2014 à 10:32
Re,

Merci Vaucluse c'est aussi la conclusion à laquelle je suis arrivé.

Tu assures :)

Merci à tous pour votre aide.

Ps : Pour information, j'ai dû me résigner à créer plusieurs colonnes pour mes lettres qui correspondent à un type de panne car des "OK" et des "HS" sont aussi rentrés dans la fameuse colonne "M" et la formule "contient" fausse, forcement, le résultat pour les type de pannes (O;K;H et S).
Donc, plusieurs colonnes pour les pannes avec du "=" ou pas de * en fonction de la formule choisie pour l'analyse.

Sujet Résolu ! (^_^)
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 750
Modifié par pijaku le 16/01/2014 à 10:33
Bonjour,

Une formule "toute biscornue", mais qui semble fonctionner , alors...

=SOMMEPROD((E5:E999="Texte 3")*(NON(ESTERREUR(CHERCHE("*Q*";M5:M999)))))


Cordialement,
Franck
0
Razcommentcamarche Messages postés 10 Date d'inscription vendredi 10 janvier 2014 Statut Membre Dernière intervention 1 juillet 2015
16 janv. 2014 à 13:23
Effectivement :p

Je reste obligé de créer plusieurs colonnes pour mes lettres, mais j'ai le choix de trois formules pour répondre à mon problème !

Bravo les gars z'êtes trop balèzes ^^

J'espère pouvoir, à mon tour, pouvoir aider quelqu'un grâce à ce que j'apprend à votre contact.

Bonne journée à tous.
0