Obtenir les dates selon le n° de semaine

dev74 Messages postés 8 Date d'inscription samedi 4 novembre 2000 Statut Membre Dernière intervention 14 mars 2005 - 23 févr. 2005 à 10:04
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 - 23 févr. 2005 à 16:09
Bonjour,
je voudrais qu'à partir du n° de semaine je puisse retrouvrer les dates de début et de fin de cette semaine.

Merci d'avance pour toute réponse

Dev

7 réponses

Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
23 févr. 2005 à 11:47
retrouve le premier jour de la semaine de l'année en cours sous forme de date en fonction du numéro de semaine passée en paramètre.
pour retrouver le dernier jour de la semaine il suffit de rajouter 6

Private Function SemToDate(nu As Integer) As Date
Dim j As Integer
Dim x As Integer
Dim dt As Date
dt = DateSerial(Year(Now), 1, 1)
j = Format$(dt, "w", vbUseSystemDayOfWeek)
x = nu * 7 - 6 - j
If x < 0 Then x = 0
SemToDate = dt + x
End Function

Daniel
0
dev74 Messages postés 8 Date d'inscription samedi 4 novembre 2000 Statut Membre Dernière intervention 14 mars 2005
23 févr. 2005 à 13:33
Merci d'avoir répondu. Le code ne fonctionne pas, il me met un message d'erreur :
"Type imcompatible 'Format'".
Que dois-je faire ?

Dev
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
23 févr. 2005 à 13:37
tu pourrais dire à quelle Ligne est l'erreur ?

Daniel
0
dev74 Messages postés 8 Date d'inscription samedi 4 novembre 2000 Statut Membre Dernière intervention 14 mars 2005
23 févr. 2005 à 13:42
L'erreur se trouve à la ligne j=Format$(dt,"w", vbUseSystemDayOfWeek)
La fonction Format ne tient pas compte des semaines

Dev
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
23 févr. 2005 à 13:53
j'ai pas d'erreur chez moi, la conversion est implicite:
j = CInt(Format$(dt, "w", vbUseSystemDayOfWeek))

sinon on l'a directement en numérique:
j = DatePart("w", dt, vbUseSystemDayOfWeek)

Daniel
0
dev74 Messages postés 8 Date d'inscription samedi 4 novembre 2000 Statut Membre Dernière intervention 14 mars 2005
23 févr. 2005 à 15:31
Je vais essayer la premiere solution. La deuxieme me donne le n° de semaine selon la date. J'avais déja essayer cette solution

Merci

Dev
0
Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
23 févr. 2005 à 16:09
non c'est pour avoir le premier jour de l'année. tout le reste en découle.

Daniel
0
Rejoignez-nous