Bonjour,
Je sais avec DatePart() obtenir le numéro de la semaine d'une date donnée.
A l'inverse, je cherche un moyen d'obtenir la date complète du 1er jour de
la semaine connaissant le numéro de ladite semaine.
J'ai trouvé une méthode "système D" en comparant toutes les dates de
jusqu'à avoir le même numéro de semaine mais cela ne me satisfait pas car
c'est lent.
Merci pour vos idées.
Teddy
Bonjour,
Je sais avec DatePart() obtenir le numéro de la semaine d'une date donnée.
A l'inverse, je cherche un moyen d'obtenir la date complète du 1er jour de
la semaine connaissant le numéro de ladite semaine.
J'ai trouvé une méthode "système D" en comparant toutes les dates de
jusqu'à avoir le même numéro de semaine mais cela ne me satisfait pas car
c'est lent.
Merci pour vos idées.
Teddy
Bonjour,
Je sais avec DatePart() obtenir le numéro de la semaine d'une date donnée.
A l'inverse, je cherche un moyen d'obtenir la date complète du 1er jour de
la semaine connaissant le numéro de ladite semaine.
J'ai trouvé une méthode "système D" en comparant toutes les dates de
jusqu'à avoir le même numéro de semaine mais cela ne me satisfait pas car
c'est lent.
Merci pour vos idées.
Teddy
Bonjour,
Je sais avec DatePart() obtenir le numéro de la semaine d'une date donnée.
A l'inverse, je cherche un moyen d'obtenir la date complète du 1er jour de
la semaine connaissant le numéro de ladite semaine.
J'ai trouvé une méthode "système D" en comparant toutes les dates de
jusqu'à avoir le même numéro de semaine mais cela ne me satisfait pas car
c'est lent.
Merci pour vos idées.
Teddy
Bonjour,
Je sais avec DatePart() obtenir le numéro de la semaine d'une date donnée.
A l'inverse, je cherche un moyen d'obtenir la date complète du 1er jour de
la semaine connaissant le numéro de ladite semaine.
J'ai trouvé une méthode "système D" en comparant toutes les dates de
jusqu'à avoir le même numéro de semaine mais cela ne me satisfait pas car
c'est lent.
Merci pour vos idées.
Teddy
Bonjour,
Je sais avec DatePart() obtenir le numéro de la semaine d'une date donnée.
A l'inverse, je cherche un moyen d'obtenir la date complète du 1er jour de
la semaine connaissant le numéro de ladite semaine.
J'ai trouvé une méthode "système D" en comparant toutes les dates de
jusqu'à avoir le même numéro de semaine mais cela ne me satisfait pas car
c'est lent.
Merci pour vos idées.
Teddy
naaa.. j'ai oublié de renommer la fonction avec toutes ces
FirstDateOfWeek me parait plus logique.
'***
' Module1
Option Explicit
Private Sub Main()
Debug.Print FirstDateOfWeek(2004, 2)
End Sub
Private Function FirstDateOfWeek _
( _
ByRef iYear As Integer, _
ByRef iWeek As Integer, _
Optional ByRef FirstDayOfWeek As VbDayOfWeek VbDayOfWeek.vbSunday
_
) As Date
FirstDateOfWeek = DateSerial(iYear, 1, 1)
If Weekday(FirstDateOfWeek, FirstDayOfWeek) <> 1 Then
FirstDateOfWeek = FirstDateOfWeek + (8 - Weekday(FirstDateOfWeek,
FirstDayOfWeek))
End If
If (iWeek > 1) Then
FirstDateOfWeek = FirstDateOfWeek + (7 * (iWeek - 1))
End If
End Function
'***
--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
Le français se refait une beauté, parlons en :
http://www.orthographe-recommandee.info/
naaa.. j'ai oublié de renommer la fonction avec toutes ces
FirstDateOfWeek me parait plus logique.
'***
' Module1
Option Explicit
Private Sub Main()
Debug.Print FirstDateOfWeek(2004, 2)
End Sub
Private Function FirstDateOfWeek _
( _
ByRef iYear As Integer, _
ByRef iWeek As Integer, _
Optional ByRef FirstDayOfWeek As VbDayOfWeek VbDayOfWeek.vbSunday
_
) As Date
FirstDateOfWeek = DateSerial(iYear, 1, 1)
If Weekday(FirstDateOfWeek, FirstDayOfWeek) <> 1 Then
FirstDateOfWeek = FirstDateOfWeek + (8 - Weekday(FirstDateOfWeek,
FirstDayOfWeek))
End If
If (iWeek > 1) Then
FirstDateOfWeek = FirstDateOfWeek + (7 * (iWeek - 1))
End If
End Function
'***
--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
Le français se refait une beauté, parlons en :
http://www.orthographe-recommandee.info/
naaa.. j'ai oublié de renommer la fonction avec toutes ces
FirstDateOfWeek me parait plus logique.
'***
' Module1
Option Explicit
Private Sub Main()
Debug.Print FirstDateOfWeek(2004, 2)
End Sub
Private Function FirstDateOfWeek _
( _
ByRef iYear As Integer, _
ByRef iWeek As Integer, _
Optional ByRef FirstDayOfWeek As VbDayOfWeek VbDayOfWeek.vbSunday
_
) As Date
FirstDateOfWeek = DateSerial(iYear, 1, 1)
If Weekday(FirstDateOfWeek, FirstDayOfWeek) <> 1 Then
FirstDateOfWeek = FirstDateOfWeek + (8 - Weekday(FirstDateOfWeek,
FirstDayOfWeek))
End If
If (iWeek > 1) Then
FirstDateOfWeek = FirstDateOfWeek + (7 * (iWeek - 1))
End If
End Function
'***
--
Cordialement
Yanick Lefebvre - MVP pour Visual Basic
Le français se refait une beauté, parlons en :
http://www.orthographe-recommandee.info/
Bonsoir,
dim date1 as date
Si le 01/01/N est un dimanche = 1 (ou 0) suivant numérotation, disons
ici alors : date1 = 01/01/N
si le 01/01/N <> dimanche alors
date1= 26/12/N-1
for i = 1 to 6
if date1 = dimanche alors sort de la boucle
date1 = date1 + i
next i
fin de condition
' nous avons ainsi la date du dimanche 1er J de la 1ere semaine dans
"date1"
'
Si semaine_recherchee = 1 alors ---> date1
Si semaine_rechechee > 1 alors i = date1 + ((semaine_recherchee - 1) *
7)
' la variable date va additionner toute seule les jours correctement
suivant l'année concernée
' A tester, je n'ai pas essayé, manque de temps :o)
'---------------------------
En pratique sur l'année 2005
détermine le 1er dimanche, qui n'est pas le 1/1/5, donc on va le
chercher en 2004 = 26/12/4
Disons qu'on veut la semaine 3, soit : (3-1)* 7 = 14, soit 26/12/4+14
--
Merci, @+, bye, Joe
troll75 AROBASE iFrance POINT com
------------------------------------------
Ce message est plein de virus "certifiés"
Le_Troll, éleveur de Trolls depuis César, qui disait:
Avec une hache, celui qui tient le manche a toujours raison !
------------------------------------------
" Teddy" a écrit dans le message de news:
> Bonjour,
>
> Je sais avec DatePart() obtenir le numéro de la semaine d'une date
>
> A l'inverse, je cherche un moyen d'obtenir la date complète du 1er jour
> la semaine connaissant le numéro de ladite semaine.
>
> J'ai trouvé une méthode "système D" en comparant toutes les dates de
l'année
> jusqu'à avoir le même numéro de semaine mais cela ne me satisfait pas
> c'est lent.
>
> Merci pour vos idées.
>
> Teddy
>
>
Bonsoir,
dim date1 as date
Si le 01/01/N est un dimanche = 1 (ou 0) suivant numérotation, disons
ici alors : date1 = 01/01/N
si le 01/01/N <> dimanche alors
date1= 26/12/N-1
for i = 1 to 6
if date1 = dimanche alors sort de la boucle
date1 = date1 + i
next i
fin de condition
' nous avons ainsi la date du dimanche 1er J de la 1ere semaine dans
"date1"
'
Si semaine_recherchee = 1 alors ---> date1
Si semaine_rechechee > 1 alors i = date1 + ((semaine_recherchee - 1) *
7)
' la variable date va additionner toute seule les jours correctement
suivant l'année concernée
' A tester, je n'ai pas essayé, manque de temps :o)
'---------------------------
En pratique sur l'année 2005
détermine le 1er dimanche, qui n'est pas le 1/1/5, donc on va le
chercher en 2004 = 26/12/4
Disons qu'on veut la semaine 3, soit : (3-1)* 7 = 14, soit 26/12/4+14
--
Merci, @+, bye, Joe
troll75 AROBASE iFrance POINT com
------------------------------------------
Ce message est plein de virus "certifiés"
Le_Troll, éleveur de Trolls depuis César, qui disait:
Avec une hache, celui qui tient le manche a toujours raison !
------------------------------------------
" Teddy" <teddy@wanadoo.fr> a écrit dans le message de news:
e1sMjJleEHA.3348@TK2MSFTNGP12.phx.gbl...
> Bonjour,
>
> Je sais avec DatePart() obtenir le numéro de la semaine d'une date
>
> A l'inverse, je cherche un moyen d'obtenir la date complète du 1er jour
> la semaine connaissant le numéro de ladite semaine.
>
> J'ai trouvé une méthode "système D" en comparant toutes les dates de
l'année
> jusqu'à avoir le même numéro de semaine mais cela ne me satisfait pas
> c'est lent.
>
> Merci pour vos idées.
>
> Teddy
>
>
Bonsoir,
dim date1 as date
Si le 01/01/N est un dimanche = 1 (ou 0) suivant numérotation, disons
ici alors : date1 = 01/01/N
si le 01/01/N <> dimanche alors
date1= 26/12/N-1
for i = 1 to 6
if date1 = dimanche alors sort de la boucle
date1 = date1 + i
next i
fin de condition
' nous avons ainsi la date du dimanche 1er J de la 1ere semaine dans
"date1"
'
Si semaine_recherchee = 1 alors ---> date1
Si semaine_rechechee > 1 alors i = date1 + ((semaine_recherchee - 1) *
7)
' la variable date va additionner toute seule les jours correctement
suivant l'année concernée
' A tester, je n'ai pas essayé, manque de temps :o)
'---------------------------
En pratique sur l'année 2005
détermine le 1er dimanche, qui n'est pas le 1/1/5, donc on va le
chercher en 2004 = 26/12/4
Disons qu'on veut la semaine 3, soit : (3-1)* 7 = 14, soit 26/12/4+14
--
Merci, @+, bye, Joe
troll75 AROBASE iFrance POINT com
------------------------------------------
Ce message est plein de virus "certifiés"
Le_Troll, éleveur de Trolls depuis César, qui disait:
Avec une hache, celui qui tient le manche a toujours raison !
------------------------------------------
" Teddy" a écrit dans le message de news:
> Bonjour,
>
> Je sais avec DatePart() obtenir le numéro de la semaine d'une date
>
> A l'inverse, je cherche un moyen d'obtenir la date complète du 1er jour
> la semaine connaissant le numéro de ladite semaine.
>
> J'ai trouvé une méthode "système D" en comparant toutes les dates de
l'année
> jusqu'à avoir le même numéro de semaine mais cela ne me satisfait pas
> c'est lent.
>
> Merci pour vos idées.
>
> Teddy
>
>
Merci, c'est ce que je cherchais !
Je vais quand même approfondir l'emploi de ce "DateSerial".
Teddy
"Zoury" a écrit dans le message de
news:
> naaa.. j'ai oublié de renommer la fonction avec toutes ces
modifications...
> FirstDateOfWeek me parait plus logique.
>
> '***
> ' Module1
> Option Explicit
>
> Private Sub Main()
>
> Debug.Print FirstDateOfWeek(2004, 2)
>
> End Sub
>
> Private Function FirstDateOfWeek _
> ( _
> ByRef iYear As Integer, _
> ByRef iWeek As Integer, _
> Optional ByRef FirstDayOfWeek As VbDayOfWeek > VbDayOfWeek.vbSunday
> _
> ) As Date
>
> FirstDateOfWeek = DateSerial(iYear, 1, 1)
> If Weekday(FirstDateOfWeek, FirstDayOfWeek) <> 1 Then
> FirstDateOfWeek = FirstDateOfWeek + (8 -
> FirstDayOfWeek))
> End If
> If (iWeek > 1) Then
> FirstDateOfWeek = FirstDateOfWeek + (7 * (iWeek - 1))
> End If
>
> End Function
> '***
>
>
> --
> Cordialement
> Yanick Lefebvre - MVP pour Visual Basic
> Le français se refait une beauté, parlons en :
> http://www.orthographe-recommandee.info/
>
>
Merci, c'est ce que je cherchais !
Je vais quand même approfondir l'emploi de ce "DateSerial".
Teddy
"Zoury" <yanick_lefebvre@hotmail.com> a écrit dans le message de
news:uKggIsleEHA.724@TK2MSFTNGP10.phx.gbl...
> naaa.. j'ai oublié de renommer la fonction avec toutes ces
modifications...
> FirstDateOfWeek me parait plus logique.
>
> '***
> ' Module1
> Option Explicit
>
> Private Sub Main()
>
> Debug.Print FirstDateOfWeek(2004, 2)
>
> End Sub
>
> Private Function FirstDateOfWeek _
> ( _
> ByRef iYear As Integer, _
> ByRef iWeek As Integer, _
> Optional ByRef FirstDayOfWeek As VbDayOfWeek > VbDayOfWeek.vbSunday
> _
> ) As Date
>
> FirstDateOfWeek = DateSerial(iYear, 1, 1)
> If Weekday(FirstDateOfWeek, FirstDayOfWeek) <> 1 Then
> FirstDateOfWeek = FirstDateOfWeek + (8 -
> FirstDayOfWeek))
> End If
> If (iWeek > 1) Then
> FirstDateOfWeek = FirstDateOfWeek + (7 * (iWeek - 1))
> End If
>
> End Function
> '***
>
>
> --
> Cordialement
> Yanick Lefebvre - MVP pour Visual Basic
> Le français se refait une beauté, parlons en :
> http://www.orthographe-recommandee.info/
>
>
Merci, c'est ce que je cherchais !
Je vais quand même approfondir l'emploi de ce "DateSerial".
Teddy
"Zoury" a écrit dans le message de
news:
> naaa.. j'ai oublié de renommer la fonction avec toutes ces
modifications...
> FirstDateOfWeek me parait plus logique.
>
> '***
> ' Module1
> Option Explicit
>
> Private Sub Main()
>
> Debug.Print FirstDateOfWeek(2004, 2)
>
> End Sub
>
> Private Function FirstDateOfWeek _
> ( _
> ByRef iYear As Integer, _
> ByRef iWeek As Integer, _
> Optional ByRef FirstDayOfWeek As VbDayOfWeek > VbDayOfWeek.vbSunday
> _
> ) As Date
>
> FirstDateOfWeek = DateSerial(iYear, 1, 1)
> If Weekday(FirstDateOfWeek, FirstDayOfWeek) <> 1 Then
> FirstDateOfWeek = FirstDateOfWeek + (8 -
> FirstDayOfWeek))
> End If
> If (iWeek > 1) Then
> FirstDateOfWeek = FirstDateOfWeek + (7 * (iWeek - 1))
> End If
>
> End Function
> '***
>
>
> --
> Cordialement
> Yanick Lefebvre - MVP pour Visual Basic
> Le français se refait une beauté, parlons en :
> http://www.orthographe-recommandee.info/
>
>
Merci, c'est ce que je cherchais !
Je vais quand même approfondir l'emploi de ce "DateSerial".
Teddy
"Zoury" a écrit dans le message de
news:
> naaa.. j'ai oublié de renommer la fonction avec toutes ces
modifications...
> FirstDateOfWeek me parait plus logique.
>
> '***
> ' Module1
> Option Explicit
>
> Private Sub Main()
>
> Debug.Print FirstDateOfWeek(2004, 2)
>
> End Sub
>
> Private Function FirstDateOfWeek _
> ( _
> ByRef iYear As Integer, _
> ByRef iWeek As Integer, _
> Optional ByRef FirstDayOfWeek As VbDayOfWeek > VbDayOfWeek.vbSunday
> _
> ) As Date
>
> FirstDateOfWeek = DateSerial(iYear, 1, 1)
> If Weekday(FirstDateOfWeek, FirstDayOfWeek) <> 1 Then
> FirstDateOfWeek = FirstDateOfWeek + (8 -
> FirstDayOfWeek))
> End If
> If (iWeek > 1) Then
> FirstDateOfWeek = FirstDateOfWeek + (7 * (iWeek - 1))
> End If
>
> End Function
> '***
>
>
> --
> Cordialement
> Yanick Lefebvre - MVP pour Visual Basic
> Le français se refait une beauté, parlons en :
> http://www.orthographe-recommandee.info/
>
>
Merci, c'est ce que je cherchais !
Je vais quand même approfondir l'emploi de ce "DateSerial".
Teddy
"Zoury" <yanick_lefebvre@hotmail.com> a écrit dans le message de
news:uKggIsleEHA.724@TK2MSFTNGP10.phx.gbl...
> naaa.. j'ai oublié de renommer la fonction avec toutes ces
modifications...
> FirstDateOfWeek me parait plus logique.
>
> '***
> ' Module1
> Option Explicit
>
> Private Sub Main()
>
> Debug.Print FirstDateOfWeek(2004, 2)
>
> End Sub
>
> Private Function FirstDateOfWeek _
> ( _
> ByRef iYear As Integer, _
> ByRef iWeek As Integer, _
> Optional ByRef FirstDayOfWeek As VbDayOfWeek > VbDayOfWeek.vbSunday
> _
> ) As Date
>
> FirstDateOfWeek = DateSerial(iYear, 1, 1)
> If Weekday(FirstDateOfWeek, FirstDayOfWeek) <> 1 Then
> FirstDateOfWeek = FirstDateOfWeek + (8 -
> FirstDayOfWeek))
> End If
> If (iWeek > 1) Then
> FirstDateOfWeek = FirstDateOfWeek + (7 * (iWeek - 1))
> End If
>
> End Function
> '***
>
>
> --
> Cordialement
> Yanick Lefebvre - MVP pour Visual Basic
> Le français se refait une beauté, parlons en :
> http://www.orthographe-recommandee.info/
>
>
Merci, c'est ce que je cherchais !
Je vais quand même approfondir l'emploi de ce "DateSerial".
Teddy
"Zoury" a écrit dans le message de
news:
> naaa.. j'ai oublié de renommer la fonction avec toutes ces
modifications...
> FirstDateOfWeek me parait plus logique.
>
> '***
> ' Module1
> Option Explicit
>
> Private Sub Main()
>
> Debug.Print FirstDateOfWeek(2004, 2)
>
> End Sub
>
> Private Function FirstDateOfWeek _
> ( _
> ByRef iYear As Integer, _
> ByRef iWeek As Integer, _
> Optional ByRef FirstDayOfWeek As VbDayOfWeek > VbDayOfWeek.vbSunday
> _
> ) As Date
>
> FirstDateOfWeek = DateSerial(iYear, 1, 1)
> If Weekday(FirstDateOfWeek, FirstDayOfWeek) <> 1 Then
> FirstDateOfWeek = FirstDateOfWeek + (8 -
> FirstDayOfWeek))
> End If
> If (iWeek > 1) Then
> FirstDateOfWeek = FirstDateOfWeek + (7 * (iWeek - 1))
> End If
>
> End Function
> '***
>
>
> --
> Cordialement
> Yanick Lefebvre - MVP pour Visual Basic
> Le français se refait une beauté, parlons en :
> http://www.orthographe-recommandee.info/
>
>