OVH Cloud OVH Cloud

Une colle avec les dates

13 réponses
Avatar
Denys
Bonjour à tous,

Petite énigme avec les dates. Je souhaiterais en D7 écrire le premier jour
ouvrable de l'année (sans égard aux congés fériés). Puis en D8, le premier
vendredi suivant la date en D7 (ce peut être la même date qu'en D7).

Par la suite, en E7 je veux avoir le lundi suivant la date en D8, et en E8
le vendredi suivant le lundi en E7, mais seulement si la date fait partie du
même mois.... sinon, je veux la dernière journée ouvrable de ce mois... Comme
pour janvier 2006, la dernière journée ouvrable pour le mois était le mardi
31 janvier...

Donc, en H8, au lieu de voir vendredi le 3 février, je dois voir mardi le 31
janvier. Puis, en I7, je dois avoir mercredi le 1er février et en I8,
vendredi le 3 février...

Ainsi de suite jusqu'à la colonne BJ où l'on devrait avoir lundi le 25
décembre en BJ7, et vendredi le 29 décembre en BJ8.

C'est faisable manuellement, mais je ne veux pas recommencer à chaque
année....

Auriez-vous une petite idée des formules à employer?

Merci

Denys

3 réponses

1 2
Avatar
Ardus Petus
Bonjour Denys,

Ma solution (http://cjoint.com/?dnrf4Tg7Qs) donne bien les résultats que tu
décris.

en C7:
2006 (que tu peux modifier)
en C8: ÚTE(C7-1;13;0)

en D7 (à recopier en E7, F7, etc...):
=SI(JOURSEM(C8+1)=1;C8+2;SI(JOURSEM(C8+1)=7;C8+3;C8+1))

en D8 (à recopier en E8, F8, etc...)
=SI(MOIS(D7+6-JOURSEM(D7))=MOIS(D7);D7+6-JOURSEM(D7);SI(JOURSEM(DATE(ANNEE(D
7);MOIS(D7)+1;0))=1;DATE(ANNEE(D7);MOIS(D7)+1;0)-1;SI(JOURSEM(DATE(ANNEE(D7)
;MOIS(D7)+1;0))=7;DATE(ANNEE(D7);MOIS(D7)+1;0)-2;DATE(ANNEE(D7);MOIS(D7)+1;0
))))

Cordialement,
--
AP

"Denys" a écrit dans le message de
news:
Bonjour Denis,

Merci beaucoup. Effectivement, en changeant pour la cellule A1 ça
raccourcit

de beaucoup la formule.

Le seul problème que j'ai à présent, c'est que si le mois se termine un
mercredi, c'est cette date-là que je veux capturer en ligne 8, puis
recommencer la colonne suivante avec la première journée ouvrable du mois
suivant... Par exemple:
Colonne

F G H
I
2006/01/16 2006/01/23 2006/01/30 2006/02/01
2006/01/20 2006/01/27 2006/01/31 2006/02/03

C'est pour cela que le résulat me donne 59 colonnes pour 52 semaines...

Je ne sais pas si c'est clair, et si oui, si c'est faisable...

Merci

Denys






Bonjour Denys,

Sans validation matricielle :


ÚTE(ANNEE(AUJOURDHUI());1;SI(JOURSEM(DATE(ANNEE(AUJOURDHUI());1;1);1)=1;2;


SI(JOURSEM(DATE(ANNEE(AUJOURDHUI());1;1);1)=7;3;JOUR(DATE(ANNEE(AUJOURDHUI()
);1;1)))))

Si tu remplaces dans la formule (année(aujourdhui()) par une référence
cellule, tu vas raccourcir la longueur de la formule !



Les autres formules...AV les a données.


Salutations!



"Denys" a écrit dans le message de
news:


Bonjour à tous,

Petite énigme avec les dates. Je souhaiterais en D7 écrire le premier
jour


ouvrable de l'année (sans égard aux congés fériés). Puis en D8, le
premier


vendredi suivant la date en D7 (ce peut être la même date qu'en D7).

Par la suite, en E7 je veux avoir le lundi suivant la date en D8, et en
E8


le vendredi suivant le lundi en E7, mais seulement si la date fait
partie du


même mois.... sinon, je veux la dernière journée ouvrable de ce mois...
Comme


pour janvier 2006, la dernière journée ouvrable pour le mois était le
mardi


31 janvier...

Donc, en H8, au lieu de voir vendredi le 3 février, je dois voir mardi
le 31


janvier. Puis, en I7, je dois avoir mercredi le 1er février et en I8,
vendredi le 3 février...

Ainsi de suite jusqu'à la colonne BJ où l'on devrait avoir lundi le 25
décembre en BJ7, et vendredi le 29 décembre en BJ8.

C'est faisable manuellement, mais je ne veux pas recommencer à chaque
année....

Auriez-vous une petite idée des formules à employer?

Merci

Denys







Avatar
Denys
Bonjour Ardus,

Wow !!!! quelle formule.... Tout fonctionne à la perfection !!!!

Merci infiniment tu me sauves énormément de temps.

Bonne journée

Denys


Bonjour Denys,

Ma solution (http://cjoint.com/?dnrf4Tg7Qs) donne bien les résultats que tu
décris.

en C7:
2006 (que tu peux modifier)
en C8: ÚTE(C7-1;13;0)

en D7 (à recopier en E7, F7, etc...):
=SI(JOURSEM(C8+1)=1;C8+2;SI(JOURSEM(C8+1)=7;C8+3;C8+1))

en D8 (à recopier en E8, F8, etc...)
=SI(MOIS(D7+6-JOURSEM(D7))=MOIS(D7);D7+6-JOURSEM(D7);SI(JOURSEM(DATE(ANNEE(D
7);MOIS(D7)+1;0))=1;DATE(ANNEE(D7);MOIS(D7)+1;0)-1;SI(JOURSEM(DATE(ANNEE(D7)
;MOIS(D7)+1;0))=7;DATE(ANNEE(D7);MOIS(D7)+1;0)-2;DATE(ANNEE(D7);MOIS(D7)+1;0
))))

Cordialement,
--
AP

"Denys" a écrit dans le message de
news:
Bonjour Denis,

Merci beaucoup. Effectivement, en changeant pour la cellule A1 ça
raccourcit

de beaucoup la formule.

Le seul problème que j'ai à présent, c'est que si le mois se termine un
mercredi, c'est cette date-là que je veux capturer en ligne 8, puis
recommencer la colonne suivante avec la première journée ouvrable du mois
suivant... Par exemple:
Colonne

F G H
I
2006/01/16 2006/01/23 2006/01/30 2006/02/01
2006/01/20 2006/01/27 2006/01/31 2006/02/03

C'est pour cela que le résulat me donne 59 colonnes pour 52 semaines...

Je ne sais pas si c'est clair, et si oui, si c'est faisable...

Merci

Denys






Bonjour Denys,

Sans validation matricielle :


ÚTE(ANNEE(AUJOURDHUI());1;SI(JOURSEM(DATE(ANNEE(AUJOURDHUI());1;1);1)=1;2;


SI(JOURSEM(DATE(ANNEE(AUJOURDHUI());1;1);1)=7;3;JOUR(DATE(ANNEE(AUJOURDHUI()
);1;1)))))

Si tu remplaces dans la formule (année(aujourdhui()) par une référence
cellule, tu vas raccourcir la longueur de la formule !



Les autres formules...AV les a données.


Salutations!



"Denys" a écrit dans le message de
news:


Bonjour à tous,

Petite énigme avec les dates. Je souhaiterais en D7 écrire le premier
jour


ouvrable de l'année (sans égard aux congés fériés). Puis en D8, le
premier


vendredi suivant la date en D7 (ce peut être la même date qu'en D7).

Par la suite, en E7 je veux avoir le lundi suivant la date en D8, et en
E8


le vendredi suivant le lundi en E7, mais seulement si la date fait
partie du


même mois.... sinon, je veux la dernière journée ouvrable de ce mois...
Comme


pour janvier 2006, la dernière journée ouvrable pour le mois était le
mardi


31 janvier...

Donc, en H8, au lieu de voir vendredi le 3 février, je dois voir mardi
le 31


janvier. Puis, en I7, je dois avoir mercredi le 1er février et en I8,
vendredi le 3 février...

Ainsi de suite jusqu'à la colonne BJ où l'on devrait avoir lundi le 25
décembre en BJ7, et vendredi le 29 décembre en BJ8.

C'est faisable manuellement, mais je ne veux pas recommencer à chaque
année....

Auriez-vous une petite idée des formules à employer?

Merci

Denys












Avatar
Ardus Petus
Merci du "feedback"

--
AP

"Denys" a écrit dans le message de
news:
Bonjour Ardus,

Wow !!!! quelle formule.... Tout fonctionne à la perfection !!!!

Merci infiniment tu me sauves énormément de temps.

Bonne journée

Denys


Bonjour Denys,

Ma solution (http://cjoint.com/?dnrf4Tg7Qs) donne bien les résultats que
tu


décris.

en C7:
2006 (que tu peux modifier)
en C8: ÚTE(C7-1;13;0)

en D7 (à recopier en E7, F7, etc...):
=SI(JOURSEM(C8+1)=1;C8+2;SI(JOURSEM(C8+1)=7;C8+3;C8+1))

en D8 (à recopier en E8, F8, etc...)

=SI(MOIS(D7+6-JOURSEM(D7))=MOIS(D7);D7+6-JOURSEM(D7);SI(JOURSEM(DATE(ANNEE(D



7);MOIS(D7)+1;0))=1;DATE(ANNEE(D7);MOIS(D7)+1;0)-1;SI(JOURSEM(DATE(ANNEE(D7)



;MOIS(D7)+1;0))=7;DATE(ANNEE(D7);MOIS(D7)+1;0)-2;DATE(ANNEE(D7);MOIS(D7)+1;0


))))

Cordialement,
--
AP

"Denys" a écrit dans le message de
news:
Bonjour Denis,

Merci beaucoup. Effectivement, en changeant pour la cellule A1 ça
raccourcit

de beaucoup la formule.

Le seul problème que j'ai à présent, c'est que si le mois se termine
un



mercredi, c'est cette date-là que je veux capturer en ligne 8, puis
recommencer la colonne suivante avec la première journée ouvrable du
mois



suivant... Par exemple:
Colonne

F G H
I
2006/01/16 2006/01/23 2006/01/30 2006/02/01
2006/01/20 2006/01/27 2006/01/31 2006/02/03

C'est pour cela que le résulat me donne 59 colonnes pour 52
semaines...




Je ne sais pas si c'est clair, et si oui, si c'est faisable...

Merci

Denys






Bonjour Denys,

Sans validation matricielle :





ÚTE(ANNEE(AUJOURDHUI());1;SI(JOURSEM(DATE(ANNEE(AUJOURDHUI());1;1);1)=1;2;



SI(JOURSEM(DATE(ANNEE(AUJOURDHUI());1;1);1)=7;3;JOUR(DATE(ANNEE(AUJOURDHUI()


);1;1)))))

Si tu remplaces dans la formule (année(aujourdhui()) par une
référence




cellule, tu vas raccourcir la longueur de la formule !

Les autres formules...AV les a données.


Salutations!



"Denys" a écrit dans le message de
news:


Bonjour à tous,

Petite énigme avec les dates. Je souhaiterais en D7 écrire le
premier




jour
ouvrable de l'année (sans égard aux congés fériés). Puis en D8, le
premier


vendredi suivant la date en D7 (ce peut être la même date qu'en D7).

Par la suite, en E7 je veux avoir le lundi suivant la date en D8, et
en




E8
le vendredi suivant le lundi en E7, mais seulement si la date fait
partie du


même mois.... sinon, je veux la dernière journée ouvrable de ce
mois...




Comme
pour janvier 2006, la dernière journée ouvrable pour le mois était
le




mardi
31 janvier...

Donc, en H8, au lieu de voir vendredi le 3 février, je dois voir
mardi




le 31
janvier. Puis, en I7, je dois avoir mercredi le 1er février et en
I8,




vendredi le 3 février...

Ainsi de suite jusqu'à la colonne BJ où l'on devrait avoir lundi le
25




décembre en BJ7, et vendredi le 29 décembre en BJ8.

C'est faisable manuellement, mais je ne veux pas recommencer à
chaque




année....

Auriez-vous une petite idée des formules à employer?

Merci

Denys














1 2