Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

[VBA] - Excel - Trouver le premier jour d'une semaine donnée

6 réponses
Avatar
Jordane
Bonjour,
N'ayant pas trouvé sur le net ni en passant par le moteur de recherche des
newsgroup, je me permet de poser ma question ici :

Je souhaiterai trouver ( ou plutot.. que vous me donniez ^^ ) une fonction
qui me permette de retourner la date du lundi d'une semaine donnée.
Ex : j'ai la semaine : 38 ( de l'année 2008 )
la fonction doit me retourner la date : 15/09/2008

Bref, je sais comment avoir le Num d'une semaine en fonction d'une date mais
pas l'inverse.

Merci d'avance de votre aide.

6 réponses

Avatar
JB
Bonjour,

B1contient l'année et B2 le no de semaine:

=7*B2+DATE(B1;1;3)-JOURSEM(DATE(B1;1;3))-5

JB
http://boisgontierjacques.free.fr/


On 25 sep, 11:08, Jordane wrote:
Bonjour,
N'ayant pas trouvé sur le net ni en passant par le moteur de recherche des
newsgroup, je me permet de poser ma question ici :

Je souhaiterai trouver ( ou plutot.. que vous me donniez ^^ ) une fonctio n
qui me permette de retourner la date du lundi d'une semaine donnée.
Ex : j'ai la semaine : 38 ( de l'année 2008 )
       la fonction doit me retourner la date : 15/09/2008

Bref, je sais comment avoir le Num d'une semaine en fonction d'une date m ais
pas l'inverse.

Merci d'avance de votre aide.


Avatar
Modeste
Bonsour® Jordane avec ferveur ;o))) vous nous disiez :

Je souhaiterai trouver ( ou plutot.. que vous me donniez ^^ ) une
fonction qui me permette de retourner la date du lundi d'une semaine
donnée.
Ex : j'ai la semaine : 38 ( de l'année 2008 )
la fonction doit me retourner la date : 15/09/2008



la notion de semaine (ISO) est insuffisante en elle-meme pour retrouver une date
il faut absolument également préciser l'année !!!!

AN est l'annee = ANNEE(dateX)

NOSEM est le n° de semaine ISO =SEM_ISO(DateX)
(norme européenne 1er jour lundi, 1ere semaine contient le premier jeudi (j=4)de l'année)
-DM®- http://www.excelabo.net/excel/semaines.php#numerosemaine

NOSEM=1+ENT(MIN(MOD(DateX-DATE(ANNEE(DateX)+{-1;0;1};1;5)+JOURSEM(DATE( ANNEE(DateX)+{-1;0;1};1;3));734))7)


ÚTE(AN;1;4)-(JOURSEM(DATE(AN;1;4);2)+6)+(7*NOSEM)



--
--
@+
;o)))
Avatar
Jordane
Bonjour, merci pour votre réponse.

Par contre, c'est en VBA qu'il me faudrait la fonction.


'---------------------------------------------------
Avatar
lSteph
Bonjour,



=((B1)+(A1*7))-(JOURSEM(B1)+5)

--
lSteph

donc trouver le lundi calendaire correspondant au numéro de semaine
pour la semaine 1 de 2008 ce sera
Lund i31/12/2007, Exemple avec en A1 ton numero de semaine et en B1
pour choisir ton Année 01/01/2008

On 25 sep, 11:08, Jordane wrote:
Bonjour,
N'ayant pas trouvé sur le net ni en passant par le moteur de recherche des
newsgroup, je me permet de poser ma question ici :

Je souhaiterai trouver ( ou plutot.. que vous me donniez ^^ ) une fonctio n
qui me permette de retourner la date du lundi d'une semaine donnée.
Ex : j'ai la semaine : 38 ( de l'année 2008 )
       la fonction doit me retourner la date : 15/09/2008

Bref, je sais comment avoir le Num d'une semaine en fonction d'une date m ais
pas l'inverse.

Merci d'avance de votre aide.


Avatar
Jordane
Bonjour,

Vos réponses ne sont pas en VBA ( ou alors je n'ai pas tout compris).
Quelqu'un a t'il une solution ?

il me faudrai un truc du genre :
sub toto()
' mes variables
NOSem = 38
Annee = 2008
jourcherche = Lundi ou = 2

' ici ce strouvera la fonction que je cherche ...
dateretournee = ???

' le resultat sera : dateretournee = "15/09/2008"
end sub



Merci de votre aide.

"Jordane" a écrit :

Bonjour,
N'ayant pas trouvé sur le net ni en passant par le moteur de recherche des
newsgroup, je me permet de poser ma question ici :

Je souhaiterai trouver ( ou plutot.. que vous me donniez ^^ ) une fonction
qui me permette de retourner la date du lundi d'une semaine donnée.
Ex : j'ai la semaine : 38 ( de l'année 2008 )
la fonction doit me retourner la date : 15/09/2008

Bref, je sais comment avoir le Num d'une semaine en fonction d'une date mais
pas l'inverse.

Merci d'avance de votre aide.


Avatar
Corto
Bonjour Jordane,
Function LundiSem(SEMAINE As Integer, Optional ANNEE As Integer) As Date
If ANNEE = 0 Then ANNEE = Year(Date)
LundiSem = 7 * SEMAINE + DateSerial(ANNEE, 1, 3) - _
Weekday(DateSerial(ANNEE, 1, 3)) - 5
End Function

Corto

Jordane a écrit :
Bonjour,
N'ayant pas trouvé sur le net ni en passant par le moteur de reche rche des
newsgroup, je me permet de poser ma question ici :

Je souhaiterai trouver ( ou plutot.. que vous me donniez ^^ ) une fonct ion
qui me permette de retourner la date du lundi d'une semaine donnée .
Ex : j'ai la semaine : 38 ( de l'année 2008 )
la fonction doit me retourner la date : 15/09/2008

Bref, je sais comment avoir le Num d'une semaine en fonction d'une date mais
pas l'inverse.

Merci d'avance de votre aide.