Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

une histoire de date

  • Initiateur de la discussion Reeaz
  • Date de début
R

Reeaz

Guest
Bonjour tout le monde,


Je souhaiterais créer une sorte de calendrier ou plutot un échéancier, c'est a dire:

j'entrerai la date de départ: par exmple: 18/06/2003
puis je donnerai un pas en nmbre de jours: par exple 30
puis je donnerais la date de fin: par exmple 18/06/2004
et la macro me renverrai toutes les dates intermédiaires, ie 18/07/2003, 18/08/2003 etc..le tout dans des collonnes.
Si qqun a quelquechose de ce type ce serait hyper sympa.
Bonne journée à tous!


Reeaz
 
P

pyrof

Guest
bonjour,

Voici une solution pour incrémenter les dates


Sub essai()
date1 = "16/1/2003"
date2 = "16/12/2003"
x = date1
While x < date2
x = DateAdd("d", 30, x)
MsgBox x
Wend
End Sub
 
C

C@thy

Guest
Bonjour Reeaz,

j'ai bien quelquechose, mais zippé il fait 52K! je te l'envoie directement, ça pourra sûrement t'aider, avec le code de Pyrof en plus, tu devrais pouvoir faire quelquechose.

 
C

C@thy

Guest
J'ai essayé un truc comme ça :

ActiveCell.FormulaR1C1 = "1/16/2003"
Range("E17:E29").Select
Selection.DataSeries Rowcol:=xlColumns, Type:=xlChronological, Date:= _
xlDay, Step:=30, Stop:=37971, Trend:=False
End Sub

Le problème c'est qu'avec un pas de 30 ça donne ça :

16/01/2003
15/02/2003
17/03/2003
16/04/2003
16/05/2003
15/06/2003
15/07/2003
14/08/2003
13/09/2003
13/10/2003
12/11/2003
12/12/2003

 
C

C@thy

Guest
Sub essaiDate()
Dim toto, datefin As Date ' Déclare les variables.
Dim IntervalType As String
Dim Msg

IntervalType = "m" ' "m" indique l'intervalle en mois.
toto = "16-jan-2002"
datefin = "16-jan-2003"

While toto < datefin
toto = DateAdd("m", 1, toto)
MsgBox toto
Wend
End Sub

 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…