Vivement dimanche

cs_benedict Messages postés 187 Date d'inscription mercredi 25 septembre 2002 Statut Membre Dernière intervention 7 mai 2009 - 12 avril 2003 à 13:57
stevebelgium Messages postés 180 Date d'inscription lundi 17 mars 2003 Statut Membre Dernière intervention 7 juin 2003 - 12 avril 2003 à 16:51
Je voudrais pouvoir trouver la date de tous les dimanches compris dans un mois donné.

Par exemple sous la forme :

dimanche(1)=
dimanche(2)=
etc.

Merci de votre aide.

Benedict :)

5 réponses

cs_PROGRAMMIX Messages postés 1133 Date d'inscription mercredi 2 octobre 2002 Statut Membre Dernière intervention 24 juillet 2011 2
12 avril 2003 à 14:31
'Voici la manière dont je procèderais:
'1°) Définir une variable Date qui serait initialisée avec la date du premier jour du mois ;
'2°) Ensuite, trouver à quel jour de la semaine correspont cette date ;
'3°) Sur base du jour ainsi trouvé, modifier la date en lui ajoutant le nombre de jours qui la sépare du premier dimanche ;
'4°) Et enfin, boucler pour recueillir la date de tous les dimanches du mois.

'Reste à traduire cela en code:
'----------------------------------
Dim PremierDuMois As Date
Dim JourSemaine As Integer
Dim Dimanche As Date

PremierDuMois = CDate("01/05/2003")
'Eventuellement voir l'aide en ligne pour les paramètres de Weekday
JourSemaine = Weekday(PremierDuMois)
Select Case JourSemaine
Case vbMonday
Dimanche = PremierDuMois + 6
Case vbTuesday
Dimanche = PremierDuMois + 5
Case vbWednesday
Dimanche = PremierDuMois + 4
Case vbThursday
Dimanche = PremierDuMois + 3
Case vbFriday
Dimanche = PremierDuMois + 2
Case vbSaturday
Dimanche = PremierDuMois + 1
Case vbSunday
Dimanche = PremierDuMois
End Select

Me.Label1.Caption = Dimanche

While Month(Dimanche) = Month(PremierDuMois)
Dimanche = Dimanche + 7 If Month(Dimanche) Month(PremierDuMois) Then Me.Label1.Caption Me.Label1.Caption & vbCrLf & Dimanche
Wend

Bonne chance...
0
stevebelgium Messages postés 180 Date d'inscription lundi 17 mars 2003 Statut Membre Dernière intervention 7 juin 2003 1
12 avril 2003 à 15:22
Nice code !
But to big , maybe more compact :

Dim PremierDuMois As Date

Dim Mois As Integer

PremierDuMois = CDate("01/05/2003")
Mois = month(PremierDuMois)

Do
If Weekday(PremierDuMois) = vbSunday Then
Label1 = Label1 & PremierDuMois & vbCrLf
End If

PremierDuMois = PremierDuMois + 1

Loop Until month(PremierDuMois) <> Mois
0
cs_benedict Messages postés 187 Date d'inscription mercredi 25 septembre 2002 Statut Membre Dernière intervention 7 mai 2009 2
12 avril 2003 à 15:30
Benedict :)

Merci. Pour du compact, c'est du compact !
;)
0
cs_benedict Messages postés 187 Date d'inscription mercredi 25 septembre 2002 Statut Membre Dernière intervention 7 mai 2009 2
12 avril 2003 à 15:32
Merci. C'est le code exact que j'ai écrit depuis que j'ai posé la question !

Les grands esprits se rencontrent !

:big)

Benedict :)
0

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

Posez votre question
stevebelgium Messages postés 180 Date d'inscription lundi 17 mars 2003 Statut Membre Dernière intervention 7 juin 2003 1
12 avril 2003 à 16:51
cool 8-)

:)
0
Rejoignez-nous