Formule pour compter des cellules

Résolu/Fermé
Alphapwnd - Modifié le 28 août 2017 à 15:22
 Alphapwnd - 30 août 2017 à 08:04
Bonjour,

Je rencontre un soucis et je ne sais pas si Excel peut faire ce que je veux ou pas.

J'aimerais faire une formule qui compte, par ligne, le nombre de fois qu'il y a écrit "201" dans la colonne E, et "201*" dans la colonne F.

Exemple : (ce serra plus simple a comprendre)

E...............................F
201...........................201455.....(ok)
201..........................................(pas ok car pas de "201*" dans la colonne F)
.................................201684....(pas ok car pas de "201" dans la colonne E)
201............................201673....(ok)


total : 2


J'ai essayé : =NB.SI.ENS(E2:E500;"201";F2:F500;"201*")
Mais ca ne marche pas...

Quelqu'un peut il m'aider svp ? :)
A voir également:

3 réponses

via55 Messages postés 14402 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 18 avril 2024 2 702
Modifié le 28 août 2017 à 15:24
Bonjour

Pour compter :
=SIERREUR(TROUVE("201";E1);0)+SIERREUR(TROUVE("201";F1);0)

Pour valider :
=SI(SIERREUR(TROUVE("201";E1);0)+SIERREUR(TROUVE("201";F1);0)=2;"OK";"NOK")

Cdlmnt
Via
"L'imagination est plus importante que le savoir."    A. Einstein
0
Bonjour.
Je viens d'adapter un poil votre formule pour compter. Ce qui donne :
=TROUVE("201";E:E)+TROUVE("201*";F:F)
Mais cela ne donne rien, ca m'écrit "#VALEUR!" dans ma cellule.

En y regardant de plus prêt, j'ai compris que vous n'avez pas compris ce que je veux ^^
J'aimerais que dans 1 seule cellule, ca compte le nombre de fois ou dans 2 colonnes, il y ai une ligne qui réponds a 2 critères.
0
via55 Messages postés 14402 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 18 avril 2024 2 702 > Alphapwnd
28 août 2017 à 15:34
Si tu n'emploie pas SIERREUR comme moi ça ne fonctionne pas
Le * est inutile avec TROUVE
Ca ne fonctionnera pas non plus sur un colonne entière

Que veux tu comptabiliser au juste sur les 2 colonnes :
- le nombre de 201 ? mais tu ne sauras pas quelles lignes sont Ok ou pas
- le nombre de lignes où il a 201 en ET et en F ?

La formule à trouver dépend de la réponse à ma question
0
Je veux comptabiliser le nombre de ligne qui contiennent "201" ET 201* qu'il y aura mais je ne sais pas quelles lignes sont OK ou pas.
A savoir que dans une autre cellule, je voulais mettre une formule pour comptabiliser l'inverse (le nombre de 201* dans la colonne F sans 201 dans la colonne E)
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 303
Modifié le 28 août 2017 à 15:36
Bonjour

a essayer
=NB.SI(E1:E100;201)+SOMME(SI(MOD(F1:F100;201)>0;1))

Formule matricielle à valider par « ctrl+maj+entrée » (et non directement par « entrée »), le curseur clignotant dans la barre de formule. La formule est alors encadrée automatiquement par des accolades : { formule }


 Michel
0
Votre formule ne marche qu'a moitié car elle comptabilise bien le nombre de 201 dans la colonne E, mais ne les comptabilisent pas en fonction de la colonne F par rapport a la ligne qui correspond a chaques 201.
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 212
28 août 2017 à 16:50
Bonjour,

peut-être pas la moins gourmande mais bon :
=SOMMEPROD((E2:E5=201)*(GAUCHE(F2:F5;3)="201")) 

eric
0
Parfait, c'est exactement ce que je cherchais !

Serrait il possible de m'éxpliquer la formule car j'avoue ne pas comprendre le "*" entre les deux tests logique ansi que le "gauche" et le "3".

Merci beaucoup en tout cas :)
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 212
28 août 2017 à 20:00
(E2:E5=201) et (GAUCHE(F2:F5;3)="201") te retournent des matrices de {VRAI;VRAI;FAUX;...}
  • te fait un ET logique entre les 2 matrices (ligne à ligne), et par la même occasion te converti les FAUX;VRAI du résultat en numériques 0;1 que peut additionner le Sommeprod()

Pour Gauche() regarde l'aide d'excel qui est très bien faite. Ca te donnera une bonne habitude ;-)
0
Merci beaucoup pour les explications ! :)
Bonne journée a vous.
0
Alphapwnd > eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023
Modifié le 29 août 2017 à 10:24
Dernière question.

J'ai un conflit entre deux cellules.
Toujours dans le même principe que cité plus haut,mais avec des références différentes.
J'ai une ref en 203*** et une en 2030***.

Quand je fais "=SOMMEPROD((E2:E500="")*(GAUCHE(F2:F500;4)="2030"))", il n'y a pas de soucis, mais quand je fait "=SOMMEPROD((E2:E500="")*(GAUCHE(F2:F500;3)="203"))", celà ne donne pas le resultat que je veux car la deuxième formule prends en compte les ref 2030*** (forcément car c'est les même 3 premiers chiffres ...)

J'ai essayé avec des "???" (=SOMMEPROD((E2:E500="")*(GAUCHE(F2:F500;3)="203???")) mais cela ne marche pas...

Une solution ?
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 212
29 août 2017 à 10:43
Bonjour,

si tu as une condition supplémentaire il faut l'ajouter :
...*(GAUCHE(F2:F500;4)<>"2030")

eric
0