Formule avec conditions de DATE

Fermé
ubik50 - 24 déc. 2013 à 15:31
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 26 déc. 2013 à 11:45
Bonjour,

j'ai la formule suivante =SOMME.SI.ENS('Stock BI'!H$2:H$162654;'Stock BI'!F$2:F$162654;">01/01/2013";'Stock BI'!F$2:F$162654;"<01/09/2013")


En gros, elle va me chercher et additionner les éléments de la colonne H d'une feuille de calcul appelée stock BI si le critère date (colonne F) est compris entre deux dates (entre 01/01/2013 et 01/09/2013).


Dans l'idéal je souhaiterais que ces critères de dates se mettent à jour automatiquement en fonction de la date du jour ; la date en colonne F doit être :
- supérieure à la date du jour moins 1 an
- inférieure à la date du jour moins 3 mois

J'ai beau tourner la formule dans tous les sens (avec des MOIS(), AUJOURDHUI(), ANNEE(), etc... impossible de ressortir quelque chose ; ça fonctionne très bien avec les dates écrites en dur dans la formule, plus du tout quand j'essaie d'écrire cette date via une formule...

Je ne sais pas si je suis très clair, mais si quelqu'un avait une idée ce serait formidable.

Merci pour votre aide,
A voir également:

5 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 403
26 déc. 2013 à 11:17
Tant que vous n'écrirez pas la formule correctement elle ne fonctionnera pas :-))), vu qu'il n'y a pas de raison qu'elle fonctionne chez les autres et pas chez vous

La voila correctement:

=SOMME.SI.ENS('Stock BI'!H$2:H$162654;'Stock BI'!F$2:F$162654;">"&DATE(ANNEE(AUJOURDHUI()-1);MOIS(AUJOURDHUI();(JOUR(AUJOURDHUI());'Stock BI'!F$2:F$162654;"<26/09/2013")

Soit selon ce que vous écrivez dans votre message
un guillemet en trop devant le signe > à enlever
et un en trop aussi derrière la double parenthèse qui ferme le calcul de date

A suivre?
1
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 403
Modifié par Vaucluse le 24/12/2013 à 16:25
Bonjour

pour avoir la date du jour en cours moins 1 an

=DATE(ANNEE(AUJOURDHUI()-1);MOIS(AUJOURDHUI());JOUR(AUJOURDHUI()))
pour avoir la date du jour en cours moins 3 mois
=DATE(ANNEE(AUJOURDHUI());MOIS(AUJOURDHUI()-3);JOUR(AUJOURDHUI()))

crdlmnt
Errare humanum est, perseverare diabolicum
0
Bonjour,

merci pour votre aide, malheureusement ça ne résout pas le problème...

Avec la formule en dur, j'ai bien un résultat, avec l'autre ça me ressort un résultat nul

je passe de :
=SOMME.SI.ENS('Stock BI'!H$2:H$162654;'Stock BI'!F$2:F$162654;">26/12/2012";'Stock BI'!F$2:F$162654;"<26/09/2013") (qui me ressort le résultat 27 449, a priori logique)

à :
=SOMME.SI.ENS('Stock BI'!H$2:H$162654;'Stock BI'!F$2:F$162654;">DATE(ANNEE(AUJOURDHUI()-1);MOIS(AUJOURDHUI());JOUR(AUJOURDHUI()))";'Stock BI'!F$2:F$162654;"<DATE(ANNEE(AUJOURDHUI());MOIS(AUJOURDHUI()-3);JOUR(AUJOURDHUI()))") qui me ressort 0
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 403
Modifié par Vaucluse le 26/12/2013 à 10:10
Bonjour
écrivez vos conditions comme suit

">"&DATE(ANNEE(AUJOURDHUI()-1);MOIS(AUJOURDHUI());JOUR(AUJOURDHUI());

soit le signe > entre guillemets; suivi du signe & suivi du calcul de date

par ailleurs, il doit y avoir une parenthèse de trop derrière la fin des calculs de date (il en faut 2 au lieu de 3)_mais là, c'est une erreur dans mon premier message

crdlmnt
0
je pense que je vais me résoudre à la modifier à chaque fois à la main et arrêter de vous embêter avec ça car ça ne passe toujours pas...

en ne modifiant que le premier critère de date comme suggéré, soit =SOMME.SI.ENS('Stock BI'!H$2:H$162654;'Stock BI'!F$2:F$162654;"">"&DATE(ANNEE(AUJOURDHUI()-1);MOIS(AUJOURDHUI();(JOUR(AUJOURDHUI())";'Stock BI'!F$2:F$162654;"<26/09/2013"), ça me ressort à nouveau 0

j'ai également tenté de mettre dans une cellule la formule =AUJOURDHUI()-365 pour faire appel directement à cette cellule et essayer de simplifier la formule, idem, résultat = 0

Je viens de faire un petit test, soit je manque cruellement de logique, soit excel est foutu à l'envers... J'ai une cellule (disons A1) dans laquelle la date est 05/12/2013 ; en B1 je mets =SI(F64>"(DATE(ANNEE(AUJOURDHUI()-1);(MOIS(AUJOURDHUI());(JOUR(AUJOURDHUI())))";"ok";"non") (si A1 est supérieur 05/12/2012 en gros, écris "ok", sinon écris "non"... il m'écrit "non" ; si je mets < au lieu de >, il m'écrit bien ok, bizarre...
(du coup j'ai essayé dans ma formule initiale en inversant les signes, ça me ressort encore et toujours 0
0

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

Posez votre question
Re-re-re... bonjour Vaucluse

Et merci, ça fonctionne enfin !!!

il restait juste un petit souci de parenthèses et guillemets dans votre dernière formule mais maintenant ça fonctionne

il fallait donc taper =SOMME.SI.ENS('Stock BI'!H$2:H$162654;'Stock BI'!F$2:F$162654;">"&DATE(ANNEE(AUJOURDHUI())-1;MOIS(AUJOURDHUI());(JOUR(AUJOURDHUI())));'Stock BI'!F$2:F$162654;"<26/09/2013")

Bref, merci infiniment pour votre aide ! (et joyeux Noël :-) )
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 403
Modifié par Vaucluse le 26/12/2013 à 11:46
Tant mieux si ça fonctionne, mais si vous rajoutez des parenthèses, c'est qu'il y en avait déjà trop (voir celle en gras italique ci dessous que vous pouvez enlever!

=SOMME.SI.ENS('Stock BI'!H$2:H$162654;'Stock BI'!F$2:F$162654;">"&DATE(ANNEE(AUJOURDHUI())-1;MOIS(AUJOURDHUI());(JOUR(AUJOURDHUI())));'Stock BI'!F$2:F$162654;"<26/09/2013")

bonne route
0