Excel : nombre de cellules / date
Résolu
mic13710
Messages postés
1087
Date d'inscription
Statut
Membre
Dernière intervention
-
mic13710 Messages postés 1087 Date d'inscription Statut Membre Dernière intervention -
mic13710 Messages postés 1087 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Dans un tableau Excel, j'ai une colonne ne contenant que des dates et je souhaiterais compter le nombre de cellules ayant une date du mois et de l'année en cours.
J'ai essayé la somme matricielle
{=SOMME((C10:C36=ANNEE(AUJOURDHUI()))*(C10:C36=MOIS(AUJOURDHUI()))*1)}
et son équivalent en sommeprod :
=SOMMEPROD((C10:C36=ANNEE(AUJOURDHUI()))*(C10:C36=MOIS(AUJOURDHUI())))
mais ça me renvoi 0, alors que j'ai au moins une date qui correspond aux critères.
Il y a surement quelque chose de très simple mais je ne vois pas quoi.
Je tourne en rond.
Si l'un d'entre vous a une idée, je suis preneur.
Merci d'avance.
Dans un tableau Excel, j'ai une colonne ne contenant que des dates et je souhaiterais compter le nombre de cellules ayant une date du mois et de l'année en cours.
J'ai essayé la somme matricielle
{=SOMME((C10:C36=ANNEE(AUJOURDHUI()))*(C10:C36=MOIS(AUJOURDHUI()))*1)}
et son équivalent en sommeprod :
=SOMMEPROD((C10:C36=ANNEE(AUJOURDHUI()))*(C10:C36=MOIS(AUJOURDHUI())))
mais ça me renvoi 0, alors que j'ai au moins une date qui correspond aux critères.
Il y a surement quelque chose de très simple mais je ne vois pas quoi.
Je tourne en rond.
Si l'un d'entre vous a une idée, je suis preneur.
Merci d'avance.
A voir également:
- Excel compter le nombre de cellule contenant un mois
- Excel cellule couleur si condition texte - Guide
- Nombre de jours entre deux dates excel - Guide
- Liste déroulante excel - Guide
- Proteger cellule excel - Guide
- Excel compter cellule couleur sans vba - Guide
6 réponses
Bonsoir,
Pour ta 2nde formule tu dois mettre le *1 également, mais la 1ère est correcte à-priori.
Je pense que tes dates n'en sont pas pour excel mais sont du texte (résultat d'une importation).
Copie une cellule vide, sélectionne ta plage de dates et 'collage spécial addition' pour les transformer en numérique.
Remet ton format date ensuite.
eric
Pour ta 2nde formule tu dois mettre le *1 également, mais la 1ère est correcte à-priori.
Je pense que tes dates n'en sont pas pour excel mais sont du texte (résultat d'une importation).
Copie une cellule vide, sélectionne ta plage de dates et 'collage spécial addition' pour les transformer en numérique.
Remet ton format date ensuite.
eric
Hello tout le monde !
Je ne serais pas aussi affirmatif que toi, Eriiic avec 3i ;)
Je propose :
=SOMMEPROD((ANNEE(C10:C36)=ANNEE(AUJOURDHUI()))*(MOIS(C10:C36)=MOIS(AUJOURDHUI()))*1)
paske font comparer ce qui est comparable...
m@rina
- "Sur le forum bureautique, on pose des questions concernant la bureautique..."
- "Ah bon ???"
Je ne serais pas aussi affirmatif que toi, Eriiic avec 3i ;)
Je propose :
=SOMMEPROD((ANNEE(C10:C36)=ANNEE(AUJOURDHUI()))*(MOIS(C10:C36)=MOIS(AUJOURDHUI()))*1)
paske font comparer ce qui est comparable...
m@rina
- "Sur le forum bureautique, on pose des questions concernant la bureautique..."
- "Ah bon ???"
Merci pour vos réponses.
doublem93, j'avais essayé nb.si mais cette fonction n'autorise pas les multi critères.
eriiic, mes cellules sont bien des dates et non du texte. Dans la cellule C28 j'ai la date d'aujourd'hui 18/01/2011. La formule =annee(C28) me renvoi bien 2011 et la formule =mois(C28) me renvoi bien 1. Normal.
Et pourtant les formules sommeprod ou matricielles ci-dessus me donnent 0.
Je ne comprends pas pourquoi ça ne fonctionne pas. Il y a peut-être plus simple aussi, mais je n'ai pas trouvé.
doublem93, j'avais essayé nb.si mais cette fonction n'autorise pas les multi critères.
eriiic, mes cellules sont bien des dates et non du texte. Dans la cellule C28 j'ai la date d'aujourd'hui 18/01/2011. La formule =annee(C28) me renvoi bien 2011 et la formule =mois(C28) me renvoi bien 1. Normal.
Et pourtant les formules sommeprod ou matricielles ci-dessus me donnent 0.
Je ne comprends pas pourquoi ça ne fonctionne pas. Il y a peut-être plus simple aussi, mais je n'ai pas trouvé.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Re,
Juste une remarque matinale :
Si la formule proposée fonctionne bien :
=SOMMEPROD((ANNEE(C10:C36)=ANNEE(AUJOURDHUI()))*(MOIS(C10:C36)=MOIS(AUJOURDHUI()))*1)
je ne vois pas très bien l'utilité du *1 à la fin car la formule
=SOMMEPROD((ANNEE(C10:C36)=ANNEE(AUJOURDHUI()))*(MOIS(C10:C36)=MOIS(AUJOURDHUI())))
marche tout aussi bien.
Je l'avais omis dans ma formule de départ et si vous pouviez m'expliquer à quoi il peut bien servir, ça m'intéresse.
Michel
Juste une remarque matinale :
Si la formule proposée fonctionne bien :
=SOMMEPROD((ANNEE(C10:C36)=ANNEE(AUJOURDHUI()))*(MOIS(C10:C36)=MOIS(AUJOURDHUI()))*1)
je ne vois pas très bien l'utilité du *1 à la fin car la formule
=SOMMEPROD((ANNEE(C10:C36)=ANNEE(AUJOURDHUI()))*(MOIS(C10:C36)=MOIS(AUJOURDHUI())))
marche tout aussi bien.
Je l'avais omis dans ma formule de départ et si vous pouviez m'expliquer à quoi il peut bien servir, ça m'intéresse.
Michel
Bonjour Michel,
Tu as raison, il ne sert à rien puisque à la base, c'est déjà multiplié par 1 (par défaut).
A partir du moment où Excel trouve une correspondance : = 1 et ensuite il additionne les 1.
On doit mettre le mutliplié par une colonne de chiffres lorsqu'on cherche à savoir le montant total en fonction d'un ou plusieurs critères.
Mais dans ton cas, il n'y a pas de montant total...
Allez, pendant qu'Eriiic dort, on va dire que c'est de sa faute !!! ;)))))))
m@rina
Tu as raison, il ne sert à rien puisque à la base, c'est déjà multiplié par 1 (par défaut).
A partir du moment où Excel trouve une correspondance : = 1 et ensuite il additionne les 1.
On doit mettre le mutliplié par une colonne de chiffres lorsqu'on cherche à savoir le montant total en fonction d'un ou plusieurs critères.
Mais dans ton cas, il n'y a pas de montant total...
Allez, pendant qu'Eriiic dort, on va dire que c'est de sa faute !!! ;)))))))
m@rina
Bonjour tout le monde,
Ca y est, je suis réveillé ! :-)
Le * 1 sert lorsque tu multiplies des matrices de test car dans ce cas tu obtiens une matrice {vrai;vrai;faux;...} dont le sommeprod=0.
Avec * 1 tu la transformes en {1;1;0;...} que tu peux sommer avec sommeprod().
Dans ton cas effectivement tu n'en as pas besoin (mea-culpa ;-) ) car tu as une valeur numérique dans tes multiplications : aujourdhui()
Inscrit qcq dates en A1:A5 et copie-les en B1:B5.
=SOMMEPROD((ANNEE(A1:A5)=ANNEE(B1:B5)*(MOIS(A1:A5)=MOIS(B1:B5)))) donne 0
=SOMMEPROD((ANNEE(A1:A5)=ANNEE(B1:B5)*(MOIS(A1:A5)=MOIS(B1:B5)))*1) donne bien 5
eric
Ca y est, je suis réveillé ! :-)
Le * 1 sert lorsque tu multiplies des matrices de test car dans ce cas tu obtiens une matrice {vrai;vrai;faux;...} dont le sommeprod=0.
Avec * 1 tu la transformes en {1;1;0;...} que tu peux sommer avec sommeprod().
Dans ton cas effectivement tu n'en as pas besoin (mea-culpa ;-) ) car tu as une valeur numérique dans tes multiplications : aujourdhui()
Inscrit qcq dates en A1:A5 et copie-les en B1:B5.
=SOMMEPROD((ANNEE(A1:A5)=ANNEE(B1:B5)*(MOIS(A1:A5)=MOIS(B1:B5)))) donne 0
=SOMMEPROD((ANNEE(A1:A5)=ANNEE(B1:B5)*(MOIS(A1:A5)=MOIS(B1:B5)))*1) donne bien 5
eric
Bonjour,
Ex pour la date 19/01/2011
=COUNTIF(C10:C36,"19/01/2011")
25
19/01/2011
19/01/2012
14/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
Ex pour la date 19/01/2011
=COUNTIF(C10:C36,"19/01/2011")
25
19/01/2011
19/01/2012
14/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
19/01/2011
Salut Zaafour et merci pour ta proposition.
Ta formule est l'équivalent anglais de nb.si dans la version française.
Elle n'est pas vraiment applicable à mon cas car je ne cherche pas une date précise, mais seulement le nombre de dates correspondant au mois et à l'année en cours.
Or, la fonction nb.si ne permet pas de faire des recherches multicritères, ici en l'occurrence, le mois et l'année.
J'avais au départ essayé cette fonction, mais j'ai rapidement laissé tombé au profit d'une recherche matricielle.
La formule avec sommeprod proposée par m@rina et eric (même s'il n'était pas au meilleur de sa forme :-)) me convient parfaitement.
Michel
Ta formule est l'équivalent anglais de nb.si dans la version française.
Elle n'est pas vraiment applicable à mon cas car je ne cherche pas une date précise, mais seulement le nombre de dates correspondant au mois et à l'année en cours.
Or, la fonction nb.si ne permet pas de faire des recherches multicritères, ici en l'occurrence, le mois et l'année.
J'avais au départ essayé cette fonction, mais j'ai rapidement laissé tombé au profit d'une recherche matricielle.
La formule avec sommeprod proposée par m@rina et eric (même s'il n'était pas au meilleur de sa forme :-)) me convient parfaitement.
Michel