Excel - countif + critères multiples

Résolu/Fermé
Nimsir Messages postés 53 Date d'inscription dimanche 5 octobre 2008 Statut Membre Dernière intervention 11 juillet 2012 - 12 mars 2009 à 11:02
 Nim - 18 mars 2009 à 17:31
Bonjour,

Je suis occupé à créer un fichier excel. Mais j'ai un p'tit soucis:
Je ne trouve pas comment faire des totaux comportant plusieurs critères.

Admettons:

A B C D E
1 Chien 26 qmsdk 55
2 Chat 52 qdfqsd qsdf 85
3 Chien 26 qmsdk 65
4 Chat 52 qdfqsd qsdf 85
5 Chien 65
6 Chat 52 qdfqsd qsdf 85
7 Chien qmsdk 65
8 Chat 52 qdfqsd qsdf 85

Ici j'aimerais donc faire le total du nombre de "Chiens" dans la colonne A, n'ayant rien dans la colonne B et "65" dans la colonne E.

(Je vois qu'ici ça part un peu en sucette, mais sinon le A, B, C, ... représente la lettre de la colonne et les 1, 2, 3, 4,... le numéro de la ligne dans Excel. En A1 vous trouvez donc "Chien", en B1 "26", ... )

Et j'ai excel en anglais...

Merci d'avance pour l'aide que vous pouriez m'apporter :)

11 réponses

Nimsir Messages postés 53 Date d'inscription dimanche 5 octobre 2008 Statut Membre Dernière intervention 11 juillet 2012 13
12 mars 2009 à 13:13
Je ne peux passer le fichier, étant donné qu'il comporte des données confidentiels (vu que c'est un fichier pour le boulot).

Mais avec le lien passé précedemment, j'ai réussi. Toutefois, il me reste un petit problème:

Les variables !

C'est à dire qu'un des deux critères peut varier. Par exemple, je veux toujours les chiens, je veux toutes les villes ou il y a "Marche" dedans.
Nous avons donc, par exemple, Marche-lez-écaussinnes, Marche les binche, marche en famenne, ville-de-marche, etc etc.

Si je veux tout les chiens venants des villes ou il y a "marche", je fais comme suite:
=sumproduct(($A$7:$A$5000="Chiens")*($D$1:$D$5000="*marche*"))

Mais il me met comme résultat 0... Alors qu'il en y a quand même quelques uns quand je regarde manuellement...
1
wilfried_42 Messages postés 907 Date d'inscription mardi 19 août 2008 Statut Contributeur Dernière intervention 8 décembre 2009 242
12 mars 2009 à 13:45
bonjour

c'est meme etonant qu'il ne te mette pas autre chose
=sumproduct(($A$7:$A$5000="Chiens")*($D$1:$D$5000="*marche*"))
regarde ta formule : Une matrice tu commence à la ligne 7 et l'audre à la ligne 1
de plus les matrices ne font pas la même taille
$A$7 et $D$1 ---> soit $A$1 avec $D$1, soit $A$7 avec $D$7
0
Nimsir Messages postés 53 Date d'inscription dimanche 5 octobre 2008 Statut Membre Dernière intervention 11 juillet 2012 13 > wilfried_42 Messages postés 907 Date d'inscription mardi 19 août 2008 Statut Contributeur Dernière intervention 8 décembre 2009
12 mars 2009 à 13:57
Je me suis trompé en tappant ici, mais c'est bon dans ma feuille excel.
0
stefan-claes Messages postés 200 Date d'inscription mardi 3 mars 2009 Statut Membre Dernière intervention 8 janvier 2011 44
12 mars 2009 à 11:22
Bonjour,

Si je comprends bien, tu souhaites connaître le total de chiens (total colonne B) mais l'afficher dans la colonne A?


Voici comment faire:

Tu cliques sur la cellule ou tu voudrais que le total apparaisse


1ère méthode (si tu as peu de valeurs):
Par exemple dans le cellule A10
Ensuite tu va dans l'onglet "Insertion" et tu cliques sur "Fonction..." (il y a un petit f dessiner à côté)
Ca ouvre une petite fenêtre où il est marqué Number 1= et là, tu as une case vide. Tu cliques dessus et tu choisi la première valeur (pour ton exemple 26)
Puis tu cliques sur la case vide de Number 2 et tu choisi la cellule avec ton deuxième nombre et ainsi de suite...

2ème méthode (si tu as beaucoup de valeurs):

Tu va sur la cellule où tu veux que le total apparaisse et tu va dans l'onglet "Insertion" et tu cliques sur "Fonction..." (il y a un petit f dessiner à côté)
Ca ouvre une petite fenêtre où il est marqué Number 1= et là, tu as une case vide.
Tu cliques sur la case vide et te positionne ta souris sur le premier nombre (ici B1 et tu fais glisser ta souris jusqu'à ton dernier nombre (mettons que si tu as beaucoup de valeur, par exemple B120) et tu cliques sur le bouton OK



N.B: Si tu change le nombre d'une des cellules que tu as utilisé pour calculer ton total, ta somme sera automatiquement mise à jour.
0
qmike Messages postés 1506 Date d'inscription mardi 19 juillet 2005 Statut Membre Dernière intervention 18 juin 2012 594
12 mars 2009 à 11:36
Bonjour
Pour ce genre de requete
La fonction Sommprod d'excel y répond
regarde ici les exemples
http://bvrve.club.fr/Astuces_Michel/30excel.php

Bonne journée
0
Nimsir Messages postés 53 Date d'inscription dimanche 5 octobre 2008 Statut Membre Dernière intervention 11 juillet 2012 13
12 mars 2009 à 11:40
Oui, cela semble correspondre a ce que j'ai besoin, mais ça fonctionne pas quand j'essaye xD
0
Nimsir Messages postés 53 Date d'inscription dimanche 5 octobre 2008 Statut Membre Dernière intervention 11 juillet 2012 13
12 mars 2009 à 11:38
Non non.

Je souhaite faire des totaux avec plusieurs critères.

C'est à dire, dans la colonne "A" on trouve des Chiens, des Chats, des souris et autres.
Dans la colonne "B", on trouve d'autres données.
Dans la colonne "C", encore d'autres.
etc etc

J'aimerais donc faire le total du nombre de chiens (de la colonne A), correspondants aux critères que j'aurai choisi (d'après les données des colonnes B, C, ...).

En clair, si dans la colonne A j'ai les "marques" des animaux
dans la colonne B je leur provenance
dans la colonne C leur age

J'aimerais donc avec un total de tout les chiens venant de France ayant 5 ans (par exemple).
0

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

Posez votre question
qmike Messages postés 1506 Date d'inscription mardi 19 juillet 2005 Statut Membre Dernière intervention 18 juin 2012 594
12 mars 2009 à 12:48
Tiens un exemple
Attention pour cette formule :

Toutes les colonnes doivent avoir le même nombre d'éléments.
Cette fonction ne fonctionne pas sur des colonnes entières.

=SOMMEPROD((A1:A6="Chien")*(B1:B6="France")*(C1:C6=5))
0
qmike Messages postés 1506 Date d'inscription mardi 19 juillet 2005 Statut Membre Dernière intervention 18 juin 2012 594
12 mars 2009 à 13:16
essai ceci
=SOMMEPROD((A1:A6="Chien")*(B1:B6="Marche"))
0
Nimsir Messages postés 53 Date d'inscription dimanche 5 octobre 2008 Statut Membre Dernière intervention 11 juillet 2012 13
12 mars 2009 à 13:58
Si je mets "Marche" tout court, il me trouvera les mots qui sont exactement comme ça.
0
wilfried_42 Messages postés 907 Date d'inscription mardi 19 août 2008 Statut Contributeur Dernière intervention 8 décembre 2009 242
12 mars 2009 à 14:31
re:

je n'avais pas vus ton *marche*
en francais la formule, tu traduits
=sommeprod(($A$1:$A$5000="Chiens")*(estnum(Trouve("marche";$D$1:$D$5000))))
0
Nimsir Messages postés 53 Date d'inscription dimanche 5 octobre 2008 Statut Membre Dernière intervention 11 juillet 2012 13
12 mars 2009 à 15:23
le "trouve" ce doit être "search" parcontre le estnum... je vois pas ^^
0
wilfried_42 Messages postés 907 Date d'inscription mardi 19 août 2008 Statut Contributeur Dernière intervention 8 décembre 2009 242
12 mars 2009 à 19:27
re:

je viens de rentrer chez moi et j'ai un fichier de traduction
Trouve c'est find
EstNum c'est IsNumber

ce qui donne :
=sumproduct(($A$1:$A$5000="Chiens")*(isnumber(find("marche";$D$1:$D$5000))))
0
Nimsir Messages postés 53 Date d'inscription dimanche 5 octobre 2008 Statut Membre Dernière intervention 11 juillet 2012 13
12 mars 2009 à 21:15
Okay, la aussi je suis chez moi, je vais donc voir demain. Je vous tien au courant :)
0
Nimsir Messages postés 53 Date d'inscription dimanche 5 octobre 2008 Statut Membre Dernière intervention 11 juillet 2012 13
13 mars 2009 à 08:28
Voila !

ça fonctionne ! Merci beaucoup !
Je vais analyser la formule histoire de savoir pour une prochaine fois :)

Encoremerci
0
wilfried_42 Messages postés 907 Date d'inscription mardi 19 août 2008 Statut Contributeur Dernière intervention 8 décembre 2009 242
14 mars 2009 à 08:40
re:

Find renvoie la position d'une chaîne à l'intérieur d'une autre, si la chaîne n'existe pas, il renvoie une erreur
en testant si la valeur renvoyée par find est numérique, un sait finalement si la chaîne est présente.
voila
0
J'ai pas tout compris... je dois l'avouer :s
0