Votre question
Résolu

Excel Comptabiliser des lignes en fonction de différents critères

Tags :
  • Programmation
Dernière réponse : dans Programmation
23 Août 2017 13:55:43

Bonjour à toute la communauté, je vous sollicite car j’ai quelques difficultés à choisir et rédiger une formule.
J’ai un tableau sous une feuille Excel avec un titre en ligne 1, les titres des différentes colonnes en ligne 2. Les données sont donc renseignées à partir de la ligne 3.
Dans ce tableau, je souhaite comptabiliser des données vérifiant certaines conditions.
Ma première difficulté réside dans le choix de la formule à utiliser.
Exemple 1 : je souhaite comptabiliser le nombre de cellules pour lesquelles 2017 correspond à l’année dans la date renseignée en colonne G et qui dans le même temps ont la valeur « VRAI » en colonne O.
Dans un premier temps, j’ai cherché à éditer la formule qui me permette de comptabiliser le nombre de cellules dont l’année est 2017 en colonne G. Après avoir essayé de différentes façons (NB.SI, SOMMEPROD), j’ai réussi à rédiger cette formule qui fonctionne : =SOMMEPROD((ANNEE('Feuil1'!G3:G1048576)=2017)*1)
J’aurais souhaité « simplifier » cette formule avec =SOMMEPROD((ANNEE('Feuil1'!G:G)=2017)*1) mais cela ne fonctionne pas, du fait des titres je suppose. Existe-t-il un moyen de désigner la colonne G dans cette formule en retirant éventuellement les 2 premières lignes ?
Ensuite, j’ai donc souhaité développer cette formule pour répondre à mon exemple : =SOMMEPROD((ANNEE('Feuil1'!G3:G1048576)=2017)*('Feuil1'!O3:o 1048576)="VRAI") mais cette formule ne fonctionne pas. On me renvoie la valeur 0.
J’ai donc essayé de me concentrer sur la 2e partie de la formule mais je ne parviens pas à la rédiger avec la fonction SOMMEPROD. Par contre, je parviens à la rédiger avec la fonction NB.SI :
=NB.SI(('Feuil1'!O3:o 1048576);"VRAI")
Je suis donc un peu « perdu » sur la méthodologie à adopter.
Merci d’avance à toute personne qui pourra m’apporter des conseils sur ce sujet.

Autres pages sur : excel comptabiliser lignes fonction differents criteres

23 Août 2017 15:41:09

En complément de mon mail précédent, et suite à mes recherches sur le net, je pense qu'il faut privilégier la solution SOMMEPROD.

J'ai donc cette formule à proposer mais malheureusement qui ne fonctionne pas :
  1. =SOMMEPROD((ANNEE('Feuil1'!G3:G1048576)=2017)*1*('Feuil1'!O3:O1048576)="VRAI")
m
0
l
23 Août 2017 16:42:41

Bonjour

"vrai" dans ce cas est une valeur alpha numérique, or ce qui est retourné dans la cellule de test est le résultat de la fonction logique Vrai().
Donc remplace "vrai" par VRAI ou VRAI().
Désolé je n'ai pas le temps de tester maintenant, mais tiens nous au courant
Bon courage.
m
0
l
Contenus similaires
Pas de réponse à votre question ? Demandez !
23 Août 2017 17:03:42

Bonjour,

Et tout d'abord merci de prendre le temps de m'aider.

Je n'ai pas trop compris ton message sur la valeur VRAI.

Pour apporter donc quelques précisions, VRAI est une valeur qui est renseignée manuellement dans ce tableau et qui ne fait appel à aucune formule.

J'ai fait le test en remplaçant par :
  1. ="VRAI()"
ou
  1. =VRAI()
mais cela n'a pas fonctionné.
m
0
l
23 Août 2017 19:47:44

en survolant ton post j'avais cru avoir affaire à un test logique . Donc la chaine est bien alphanumérique, mes excuses :) 

En approfondissant un peu tes explications, la fonction =NB.SI(plage_de_cellules, critère) est parfaitement adaptée au comptage de cellules selon un critère.
Mais je ne comprend pas pourquoi tu espères utiliser SOMMEPROD(matrice1, [matrice2], [matrice3], ...) pour compter des cellules :??: 
cette fonction a pour utilité d'effectuer les produits de matrices.
Je te donne un excellent lien qui explique clairement l'utilité de cette fonction.
http://www.bernardcordier.com/excel_sommeprod.htm
Maintenant peut être ai je loupé un épisode .....si tu peux m'en dire plus je suis preneur.
Bonne soirée

m
0
l
24 Août 2017 08:22:12

Bonjour,

Comme évoqué dans mon mail initial, j’avais opté à l’origine pour la fonction NB.SI, sauf que je ne parviens pas à rédiger la formule qui me permette de dénombrer le nombre de cases dont la date correspond à l’année 2017, c’est pour cela que j’avais basculé sur la fonction SOMMEPROD.

Voici les 2 formules que j’ai testées mais qui ne fonctionnent pas :
  1. =NB.SI(ANNEE('Feuil1'!G3:G1048576);=2017)

  1. =NB.SI('Feuil1'!G3:G1048576;ANNEE=2017)


Cette formule sera à compléter avec la fonction ET et la condition suivante :
  1. =NB.SI(('Feuil1'!O3:O1048576);"VRAI")
(formule qui fonctionne)
m
0
l

Meilleure solution

a c 75 L Programmation
24 Août 2017 10:19:22

Salut,
Voilou:
=COUNTIFS(B:B;">=1.1.2017";B:B;"<1.1.2018";A:A;"VRAI")
(j'ai excel en anglais, countifs() =nb.si.ens() pour toi)
partage