Trouver le lundi de la semaine

Résolu
cs_monaco63 Messages postés 76 Date d'inscription vendredi 12 novembre 2004 Statut Membre Dernière intervention 15 juin 2009 - 27 sept. 2007 à 10:09
cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 - 27 sept. 2007 à 11:09
Bonjour,
je souhaiterai trouver le lundi de la semaine 1.
Pour le moment j'arrive en fonction de la date que je saisie à trouver son numéro de la semaine.
Par exemple 01/01/2008 --> 1
                   01/12/2008 --> 49

Maintenant je souhaiterai trouver le jour de la semaine (le lundi) en fonction du numéro de la semaine.
par exemple pour l'année 2008 il me faut le lundi 31/12/2007
                   pour l'année 2007 il me faut le lundi 02/01/2007
                   pour l'année 2010 il me faut le lundi 28/12/2009$

Je vous remercie d'avance

1 réponse

cs_JMO Messages postés 1854 Date d'inscription jeudi 23 mai 2002 Statut Membre Dernière intervention 24 juin 2018 27
27 sept. 2007 à 11:09
 Bonjour,

par exemple pour l'année 2008 il me faut le lundi 31/12/2007
                   pour l'année 2007 il me faut le lundi 01/01/2007
                   pour l'année 2010 il me faut le lundi 28/12/2009

msgbox PremierjourSemaine(1,2007)
msgbox PremierjourSemaine(1,2008)

msgbox PremierjourSemaine(1,2010)

<code class="vb_function">
</code>
<code class="vb_keyword1">Public
Function
PremierJourSemaine
(
ByVal
numSemaine
As
Byte,
ByVal
annee
As
Integer)
As
Date

Dim
d
As
Date

Dim
numS
As
Integer

'
premier
jour
de
l'année


d
=
DateSerial
(annee,
1
,
1
)

'
calcule
le
premier
jour
de
la
première
semaine
de
l'année


d
=
DateAdd
(
"
d
"
,
1
-
Weekday
(d, vbMonday), d)

'
ajoute
(numSemaine-1)
semaines


PremierJourSemaine
=
DateAdd
(
"
ww
"
, numSemaine
-
1
, d)
End
Function
</code>

jean-marc
3
Rejoignez-nous