1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
| Dim j as long
Dim dat1 as date,dat2 as date
Dim rst as DAO.RecordSet
Set rst = CurrentDb.OpenRecordset("T_Planning", dbOpenDynaset)
dat1=DebutSemaine(Me.DateDebut) ' calcul le 1er jour de la semaine
dat2=(Me.DateFin)
Do While dat1<date2
For j=1 to 5
if Me("Jour" & j).Value=true then ' si la case à cocher Jour1..5 est cochée
rst.AddNew
rst!DateOuverture = dat1+j-1
rst!TypEts = Me!TypEts
rst.Update
end if
Next j
dat1=dat1+7 ' semaine suivante
Loop
Function DebutSemaine(ByVal DateSemaine As Date) As Date
'Prend en argument un jour dans la semaine choisie et renvoie la date du premier jour de cette semaine
Dim i As Integer
i = Weekday(DateSemaine, vbMonday)
DebutSemaine = DateAdd("d", -i + 1, DateSemaine)
End Function |
Partager