Mois de Janvier + Cellule vide = 00/01/1900

Bonjour à tous, je suis actuellement en train d'approfondir mes connaissances avec Excel et un problème s'oppose à moi, Je me suis donc tout naturellement tourné vers vous, communauté active sur ce logiciel.

Je m'explique: Je souhaite faire un compte du nombre de fois ou un certain mois apparaît dans un tableau contenant un certain nombre de dates.

Par exemple j'ai un tableau avec 20 dates éparpillées dans l'année, sans classement spécifique:

CASE (J1) = 09/02/2015

CASE (J2) = 12/05/2014

J'ai donc fait un test logique sur mes cases pour comparer le mois de la date avec le mois concerné par le calcul par exemple:

La cellule "Septembre" doit compter le nombre de fois ou le mois de Septembre revient, si la cellule cible contient une date du mois de septembre, alors revoie "1" sinon, renvoie "0":

=SI(MOIS(L2)=9;1;0)

Il faut ensuite comparer et ajouter toutes les cases du tableau soit:

=SI(MOIS(ALLARD!L2)=9;1;0)+SI(MOIS(ALLARD!M2)=9;1;0)+SI(MOIS(ALLARD!L3)=9;1;0)+SI(MOIS(ALLARD!M3)=9;1;0)+SI(MOIS(ALLARD!L4)=9;1;0)+SI(MOIS(ALLARD!M4)=9;1;0)+SI(MOIS(ALLARD!L5)=9;1;0)+SI(MOIS(ALLARD!M5)=9;1;0)+SI(MOIS(ALLARD!L6)=9;1;0)+SI(MOIS(ALLARD!M6)=9;1;0)+SI(MOIS(ALLARD!L7)=9;1;0)+SI(MOIS(ALLARD!M7)=9;1;0)+SI(MOIS(ALLARD!L8)=9;1;0)+SI(MOIS(ALLARD!M8)=9;1;0)+SI(MOIS(ALLARD!L9)=9;1;0)+SI(MOIS(ALLARD!M9)=9;1;0)+SI(MOIS(ALLARD!L10)=9;1;0)+SI(MOIS(ALLARD!M10)=9;1;0)+SI(MOIS(ALLARD!L11)=9;1;0)+SI(MOIS(ALLARD!M11)=9;1;0)+SI(MOIS(ALLARD!L12)=9;1;0)+SI(MOIS(ALLARD!M12)=9;1;0)+SI(MOIS(ALLARD!L13)=9;1;0)+SI(MOIS(ALLARD!M13)=9;1;0)+SI(MOIS(ALLARD!L14)=9;1;0)+SI(MOIS(ALLARD!M14)=9;1;0)+SI(MOIS(ALLARD!L15)=9;1;0)+SI(MOIS(ALLARD!M15)=9;1;0)+SI(MOIS(ALLARD!L16)=9;1;0)+SI(MOIS(ALLARD!M16)=9;1;0)+SI(MOIS(ALLARD!L17)=9;1;0)+SI(MOIS(ALLARD!M17)=9;1;0)+SI(MOIS(ALLARD!L18)=9;1;0)+SI(MOIS(ALLARD!M18)=9;1;0)+SI(MOIS(ALLARD!L19)=9;1;0)+SI(MOIS(ALLARD!M19)=9;1;0)+SI(MOIS(ALLARD!L20)=9;1;0)+SI(MOIS(ALLARD!M20)=9;1;0)+SI(MOIS(ALLARD!L21)=9;1;0)+SI(MOIS(ALLARD!M21)=9;1;0)+SI(MOIS(ALLARD!L22)=9;1;0)+SI(MOIS(ALLARD!M22)=9;1;0)+SI(MOIS(ALLARD!L23)=9;1;0)+SI(MOIS(ALLARD!M23)=9;1;0)+SI(MOIS(ALLARD!L24)=9;1;0)+SI(MOIS(ALLARD!M24)=9;1;0)

Dans la formule Ci-dessus, "ALLARD!" est le nom du classeur ou est contenu le tableau des dates.

Ici, pour le mois de septembre, tout fonctionne correctement, c'est un peu long à mettre en place, mais ca fonctionne.

Mais les choses se corsent quand nous arrivons en Janvier, car apparemment une case vide renvoie 1 à la fonction Date car cette formule:

=SI(MOIS(ALLARD!L2)=1;1;0)+SI(MOIS(ALLARD!M2)=1;1;0)

Me renvoie "2" même si les cellules sont vides. ce qui signifie que si je possède quelques cellules vides dans mon tableau, ces dernières vont Fausser mon résultat, car il ajoutera les cellules vides aux cellules possédant réellement le mois de Janvier en date.

Donc comment puis-je faire pour que les Dates du mois de janvier soient bien comptabilisées, et du coup surtout, pour que les cellules vides ne soient pas prises en compte dans le total..

A titre d'info, voici la formule du mois de Janvier (rien de compliqué vu qu'elle est la même que celle de septembre).

=SI(MOIS(ALLARD!L2)=1;1;0)+SI(MOIS(ALLARD!M2)=1;1;0)+SI(MOIS(ALLARD!L3)=1;1;0)+SI(MOIS(ALLARD!M3)=1;1;0)+SI(MOIS(ALLARD!L4)=1;1;0)+SI(MOIS(ALLARD!M4)=1;1;0)+SI(MOIS(ALLARD!L5)=1;1;0)+SI(MOIS(ALLARD!M5)=1;1;0)+SI(MOIS(ALLARD!L6)=1;1;0)+SI(MOIS(ALLARD!M6)=1;1;0)+SI(MOIS(ALLARD!L7)=1;1;0)+SI(MOIS(ALLARD!M7)=1;1;0)+SI(MOIS(ALLARD!L8)=1;1;0)+SI(MOIS(ALLARD!M8)=1;1;0)+SI(MOIS(ALLARD!L9)=1;1;0)+SI(MOIS(ALLARD!M9)=1;1;0)+SI(MOIS(ALLARD!L10)=1;1;0)+SI(MOIS(ALLARD!M10)=1;1;0)+SI(MOIS(ALLARD!L11)=1;1;0)+SI(MOIS(ALLARD!M11)=1;1;0)+SI(MOIS(ALLARD!L12)=1;1;0)+SI(MOIS(ALLARD!M12)=1;1;0)+SI(MOIS(ALLARD!L13)=1;1;0)+SI(MOIS(ALLARD!M13)=1;1;0)+SI(MOIS(ALLARD!L14)=1;1;0)+SI(MOIS(ALLARD!M14)=1;1;0)+SI(MOIS(ALLARD!L15)=1;1;0)+SI(MOIS(ALLARD!M15)=1;1;0)+SI(MOIS(ALLARD!L16)=1;1;0)+SI(MOIS(ALLARD!M16)=1;1;0)+SI(MOIS(ALLARD!L17)=1;1;0)+SI(MOIS(ALLARD!M17)=1;1;0)+SI(MOIS(ALLARD!L18)=1;1;0)+SI(MOIS(ALLARD!M18)=1;1;0)+SI(MOIS(ALLARD!L19)=1;1;0)+SI(MOIS(ALLARD!M19)=1;1;0)+SI(MOIS(ALLARD!L20)=1;1;0)+SI(MOIS(ALLARD!M20)=1;1;0)+SI(MOIS(ALLARD!L21)=1;1;0)+SI(MOIS(ALLARD!M21)=1;1;0)+SI(MOIS(ALLARD!L22)=1;1;0)+SI(MOIS(ALLARD!M22)=1;1;0)+SI(MOIS(ALLARD!L23)=1;1;0)+SI(MOIS(ALLARD!M23)=1;1;0)+SI(MOIS(ALLARD!L24)=1;1;0)+SI(MOIS(ALLARD!M24)=1;1;0)

(ici le résultat me renvoie "46", soit le nombre de cellules vides dans mon tableau des dates)

J'espère que vous pourrez m'aider à résoudre ce problème.

A++ les amis !!

Bonjour,

Ci-joint un fichier test ...

279test-apollo.xlsx (7.88 Ko)

Merci de ta réponse, elle m'éclaire sur beaucoup de choses, notamment que je me fais un peu chier pour rien au vu de la taille de ta formule comparée aux miennes ^^

Cela fonctionne, je n'ai plus qu'a le reporter sur tout les mois de l'année ...

Un grand merci

De rien ...

Content que la formule te rende service ...

Merci pour tes remerciements ...

Je réouvre le sujet car en réalité mon problème n'a pas vraiment été résolu.

Sur le fichier exemple envoyé par James007, les calculs sont bien plus simples que ma façon de faire, et en soi c'est déjà un grand avancement.

Cependant j'ai un souci quand une case ne contient aucune données. Dans mon tableau de dates, certaines cellules ne seront pas remplies, car les dates se remplissent au fur et à mesure, Du coup pour chaque cellule vide (qui sont des cellules au format Date) la cellule me revoie 00/01/1900. Le problème c'est que cette valeur fausse le compte des dates du mois de Janvier..

Quelqun aurait-il une solution pour palier à ce problème ? Voici la formule de calcul:

=SOMMEPROD(--(MOIS(MONCLASSEUR!L2:M24)=$C$25))

- MONCLASSEUR!L2:M24 est ma plage contenant toutes les Dates ou les cellules vides

- =$C$25 est la cellule de comparaison (par exemple elle vas contenir 1 pour le mois de Janvier)

Merci d'avance à ceux qui pourront m'aider et ceux qui prendront le temps de me lire... a++

Up... Personne pour me filer un petit coup de main ? (ou un coup de pied sinon) mais quelque chose !!!

Apollo a écrit :

Up... Personne pour me filer un petit coup de main ? (ou un coup de pied sinon) mais quelque chose !!!

Bonjour,

Attention à la définition de la plage de référence ...

Dans un premier temps, il faut essayer L2:L24

Alors voici la solution que j'ai trouvé pour pallier à ce problème:

Petit Récapitulatif:

Comment faire le compte du nombre de fois ou une date du mois de Janvier ressort dans un tableau?

La solution la plus simple consiste à utiliser la fonction SOMMEPROD associée à la Fonction MOIS et de comparer le résultat au mois de janvier (01)

=SOMMEPROD(--(MOIS(TABLEAU!L2:M24)=$G$25))

Le souci vient du fait que si une case du tableau contenant les dates est vide, alors la cellule renvoie tout de même une date: 00/01/1900 soit un jour fictif d'une année dépassée MAIS du mois de Janvier tout de même. Ce qui fausse le compte.

Donc pour contrer ce problème, après mass recherches en ligne, aucune solution n'a fonctionné pour moi. Voici donc ce que j'ai fait:

=(SOMMEPROD(--(MOIS(TABLEAU!L2:M24)=$G$25)))-COMPTE!O2

Ici j'y ait rajouté: "-COMPTE!O2"

La cellule O2 du tableau COMPTE est une cellule qui vas vérifier grace à la fonction ESTVIDE si la case contient quelque chose ou non, Si oui, elle est vide alors on renvoie "0" si elle contient une date alors elle renvoie "1"

Ensuite le calcul du mois de Janvier se jusifie.

Voila, merci à ceux qui auront tenté de m'aider a++

Bonjour,

L'avantage de cette fonction réside dans le fait qu'elle accepte que tu ajoutes toutes tes conditions ...

Ci-joint ton fichier corrigé ...

Dis-moi si cela résoud ton problème ... ou pas ...

214test-apollo.xlsx (7.86 Ko)

Ca m'a tout l'air de fonctionner... ^^'

Apollo a écrit :

Ca m'a tout l'air de fonctionner... ^^'

Ravi que ce soit la solution que tu recherchais ...

Désolé de ne pas avoir vu que tu avais encore une question en suspens ....

Rechercher des sujets similaires à "mois janvier vide 1900"