Nb.si pour compter les cellules qui commencent par 2013

Airone784

XLDnaute Occasionnel
Bonsoir,

J'ai une colonne C avec des valeurs qui commencent parfois par 2012, parfois 2013 (exemple : 2012125,2013147,20133,2012698,...)

Puis-je compter en A1, le nb de cellule qui commencent par 2013 dans la colonne C???
J'ai cherché à bidouiller avec un nb.si mais je n'y parviens pas.

merci d'avance pour le coup de main.
 

R@chid

XLDnaute Barbatruc
Re : Nb.si pour compter les cellules qui commencent par 2013

Bonsoir,
je t'ai donnée une bonne formule et tu as dit qu'elle ne fonctionne pas...
Code:
=SOMME(SI(C2:C40<>"";N(GAUCHE(C2:C40;4)*1=2013)))
ou
Code:
=SOMME(SIERREUR(N(GAUCHE(C2:C40;4)*1=2013);0))
@ valider par Ctrl+Maj+Entree

@ +
 

Pièces jointes

  • Airone784.xlsx
    10.6 KB · Affichages: 99
  • Airone784.xlsx
    10.6 KB · Affichages: 99
  • Airone784.xlsx
    10.6 KB · Affichages: 116

Airone784

XLDnaute Occasionnel
Re : Nb.si pour compter les cellules qui commencent par 2013

ah oui j'avais oublié le ctr+maj+entrée en rouge pourtant.

Super formule, je me débrouille pas mal en formule en général mais là je suis largué alors peux-tu m'expliquer un peu comment fonctionne cette formule et l'intêret du ctrl+maj+entrée???
Moi je connaissais le somme.si mais pas somme(si) comment est ce possible de faire ainsi??

Merci beaucoup pour la solution
 

R@chid

XLDnaute Barbatruc
Re : Nb.si pour compter les cellules qui commencent par 2013

Bonsoir,
On valide par Ctrl+Maj+Entree car c'est une formule matricielle, je l'ai fait de cette de manière parce que la fonction GAUCHE()*1 donne une erreur #VALEUR avec des cellules vides...
Alors je suis passé par SI(Plage<>"" ou SIERREUR( pour éviter les erreurs.
tu peux essayer cette petite,
Code:
=NB(1/(GAUCHE(C2:C40;4)*1=2013))
@ valider toujours par Ctrl+Maj+Entree


@ +
 

Airone784

XLDnaute Occasionnel
Re : Nb.si pour compter les cellules qui commencent par 2013

Je comprends pas bien les matricielles.
Pourquoi tu divise par 1 (GAUCHE(C2:C40;4)*1=2013)) dans =NB(1/(GAUCHE(C2:C40;4)*1=2013))

(GAUCHE(C2:C40;4)*1=2013)) vérifie pour toutes les cellules dans la plage que les 4 chiffres de gauche *1 = 2013, si la condition est vraie (GAUCHE(C2:C40;4)*1=2013)) renvoit quoi comme valeur???

Ps : la 3ème formule marche très bien au demeurant, c'est vachement bien mais moi quand je comprends pas sur excel ça m'énerve. pareil lorsque je suis sur du VBA pour te rassurer!!!
 

R@chid

XLDnaute Barbatruc
Re : Nb.si pour compter les cellules qui commencent par 2013

Bonsoir,
Pourquoi tu divise par 1 ???
Ok,
Après la vérification, la formule va renvoyer une matrice de VRAI pour les 2013 et FAUX pour <>2013 et #VALEUR pour les cellules vides, 1/VRAI=1, 1/FAUX=#DIV/0! car VRAI=1 et FAUX=0 et on ne peux pas diviser par 0.
en fin on aura une matrice de 1 et #VALEUR et #DIV/0!, d’où la fonction NB() qui va compter juste les valeurs numériques.
@ +
 

Airone784

XLDnaute Occasionnel
Re : Nb.si pour compter les cellules qui commencent par 2013

Donc le matricielle en fait c'est une formule dans une formule. Il teste la condition renvoi une valeur et ensuite je lui demande comme dans l'exemple de compter dans la matrice chaque valeur qui vaut 1, c'est bien ça???

En tout cas 1000 merci sincèrement pour ton éclairage.
 

Discussions similaires

Réponses
3
Affichages
256

Statistiques des forums

Discussions
312 779
Messages
2 092 045
Membres
105 167
dernier inscrit
JulJon2004