Il me semble qu'il ne s'agit pas de dates allant de 30 jours (comme tu dis) en 30 jours, mais de toute autre chose !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questioncomme tu dis solution très difficile
Dim ladate As Date ladate = CDate("15/01/2011") For i = 0 To 20 MsgBox DateSerial(Year(ladate), Month(ladate) + i, Day(ladate)) Next
ladate = CDate("29/01/2011") ' date de départ du contrat ladate = ladate - 1 ' on ote un jour d'emblée For i = 0 To 20 MsgBox DateSerial(Year(ladate), Month(ladate) + i, Day(ladate)) + 1 ' on rajoute 1 jour Next
Dim ladate As Date, dateref As Date ladate = CDate("31/01/2011") ' date de départ du contrat For i = 0 To 20 dateref = DateSerial(Year(ladate), Month(ladate) + i, Day(ladate)) If Month(dateref) > (Month(ladate) + i) Then dateref = DateSerial(Year(dateref), Month(dateref), 1) End If MsgBox dateref Next
Dim ladate As Date ladate = "5/1/12" ' vb fait le reste ladate = ladate + 30 ' jours
Dim ladate As Date ladate = CDate("15/01/2011") For i = 0 To 20 MsgBox DateSerial(Year(ladate), Month(ladate) + i, Day(ladate)) Next
Dim ladate As Date, dateref As Date, k as integer ladate = CDate("31/01/2011") ' date de départ du contrat k 1 '>> pour remplacer par dernier du mois en cours 'k 0 '>> si remplacer par 1er du mois suivant For i = 0 To 20 dateref = DateSerial(Year(ladate), Month(ladate) + i, Day(ladate)) If Day(dateref) <> Day(ladate) Then dateref = DateSerial(Year(dateref), Month(dateref), 1) - k End If MsgBox dateref Next
dateref = DateSerial(Year(dateref), Month(dateref), 1) - k
dateref = DateSerial(Year(dateref), Month(dateref), 1 - k)
Renfield, que je salue.
En fait il m'a écrit aussi
On ne traite rien, sur un forum technique, en de hors du forum, au vu et au su de tous et pour le bénéfice de tous.
Conforme-toi donc à cette règle de base, s'il te plait.
Amitiés