Page 1 sur 1

[Résolu] Renvoyer dates début et fin à partir de n° semaine

Publié : 21 nov. 2009 15:20
par loic19
Bonjour,

J'ai charché dans le forum dans la partie programmation et tableur mais je n'ai pas trouvé la solution à mon problème.
toutes les fonctions sur les dates sont l'inverse du résultat que je recherche.
je recherche une fonction qui retourne une date de début (lundi) et date de fin (dimanche) avec en entrées le numéro de semaine et l'année.
je vous remercie pour votre aide.

Loic

Re: fonction renvoyant dates début et fin à partir d'une semaine

Publié : 22 nov. 2009 08:33
par rjamin
Bonjour,

Si en B3 on tape le n° de semaine
En D3 je tape

Code : Tout sélectionner

=DATEVAL("29/12/2008")+(B3-1)*7 
j'aurai en mettant D3 au format date/heure la date du lundi de la semaine en question
si en E3 je tape

Code : Tout sélectionner

=DATEVAL("29/12/2008")+(B3-1)*7+6 
j'aurai en E3 la date du dimanche de la semaine en question

A savoir que le 29/12/2008 est la date du dernier lundi qui précède le 1 janvier 2009
J'ai testé ça fonctionne.

RJ

Re: fonction renvoyant dates début et fin à partir d'une semaine

Publié : 22 nov. 2009 08:59
par gerard24
Bonjour,

La formule de rjamin fonctionne pour l'année 2009 (qui touche à sa fin :wink: )

Voici une formule "perpétuelle".

A1 contenant le numéro de semaine,
B1 contenant l'année.

Code : Tout sélectionner

=DATE($B1;1;3)-JOURSEM(DATE($B1;1;3))-5+7*$A1
Cette formule renvoie le Lundi de la semaine quelque soit l'année et en respectant la norme ISO 8601 à savoir que,
lorsque qu'une semaine est à cheval sur 2 années elle compte pour l'année où elle a le plus de jours.

A+

Re: fonction renvoyant dates début et fin à partir d'une semaine

Publié : 22 nov. 2009 09:55
par rjamin
Re,

Une question à gerard24 pourquoi

Date(B1;1;3) et pas Date(B1;1;1) ?

Cordialement

RJ

Re: fonction renvoyant dates début et fin à partir d'une semaine

Publié : 22 nov. 2009 10:09
par gerard24
A cause de la norme ISO que je cite + haut.
Avec cette norme le 4 janvier est toujours dans la première semaine de l'année. En partant du jour précédent ce 4 janvier, donc le 3
=DATE($B1;1;3)-JOURSEM(DATE($B1;1;3))-5 nous donne alors le dernier lundi de l'année précédente. Je pars du 3 à cause de l'utilisation de JOURSEM sans le deuxième argument.

Si j'utilisais DATE(B1;1;1) j'obtiendrais le numéro de semaine "à l'américaine", numéro renvoyé par NO.SEMAINE_ADD.

D'ailleurs pour respecter pleinement la norme, la logique voudrait que j'utilise =DATE($B1;1;4)-JOURSEM(DATE($B1;1;4);2)-6+7*$A22
DATE($B1;1;4)-JOURSEM(DATE($B1;1;4);2) donnant le dernier jour de la dernière semaine de l'année précédente.

A+

Re: fonction renvoyant dates début et fin à partir d'une semaine

Publié : 22 nov. 2009 12:10
par rjamin
RE,

Merci à gerard24 pour les explications et précisions. Je suis convaincu que cela pourra éclairer d'autres personnes sur la gestion des semaines et des dates aussi bien dans Calc que dans Excel.

Merci encore et bon dimanche après midi.

Mes excuses à loic19 pour l'envahissement de son sujet avec mes questions.

RJ

Re: fonction renvoyant dates début et fin à partir d'une semaine

Publié : 23 nov. 2009 20:53
par loic19
merci à vous pour ces remarques très intéressantes et à Gérard 24 pour sa formule perpétuelle et très courte.
j'avais trouvé une autre formule également suite à l'idée de rjamin :
on recherche le premier jour du mois
A1=DATE(ANNEE(AUJOURDHUI());1;1)
on teste le jour (lundi, mardi etc ...)
A2 =JOURSEM(A1;2) 'on utilise 2 pour que lundi soit égal à 1
puis par une formule de "si" on retranche pour obtenir le lundi qui précède le premier jour de l'année :
=SI(A2=2;A1-1;SI(A2=3;A1-2;SI(A2=4;A1-3;SI(A2=5;A1-4;SI(A2=6;A1-5;SI(A2=7;A1-6;1))))))
enfin quand on connait le dernier lundi de l'année précédente (ou le lundi 1er janvier dans un cas bien particulier)
on rajoute à cette date 7 * nb_semaine et on obtient alors le lundi de la semaine choisie.
mais c'est bien compliqué par rapport à la formule de Gérard24.
alors encore merci
Loic19

Re: [Résolu] Renvoyer dates début et fin à partir de n° sema

Publié : 05 déc. 2010 14:13
par gdurieux
Bonjour a tous,

Y a t'il un moyen d'adapter cette fonction de calc vers base.
En effet j'ai dans ma base de données un formulaire qui affiche le numéro de la semaine et je souhaiterais qu'au lieu de ce numéro il affiche plutot la date de début et de fin de la semaine en question.
Je ne vois pas comment adapter cette fonction vu qu'elle contient une réference de cellule que je n'aurais pas sous base...

Si quelqu'un à une idée ??

Merci d'avance

Guillaume durieux

Re: [Résolu] Renvoyer dates début et fin à partir de n° sema

Publié : 05 déc. 2010 14:21
par Don Corleone
Nous nous devons de verrouiller ce fil de discussion. Nous vous rappelons les règles de ce forum et notamment la n° 7
Un sujet = le problème d'une seule personne

Comme vous avez pu le lire, ce sujet est désormais résolu. Si vous avez également ce problème, c'est que ce dernier est différent. Votre configuration n'est peut être pas la même que celle de l'auteur de ce fil.

Dans ce cas et pour des raisons de lisibilité sur ce forum, nous vous demandons de créer une nouvelle question en rappelant que vous avez le même problème que dans ce fil.

Merci de votre collaboration.