Page 1 sur 1

calcul sur des dates

MessagePublié: 16 Sep 2010 à 10:06
par lebanner
Bonjour a tous,

J'ai une date x et je souhaite lui affecter 24H de plus donc une journée. Voici ce que j'ai fais :
@Adjust( Date_mar ; 0 ; 0 ; 1 ; 0 ; 0 ; 0 )

Par contre, je ne veux pas prend en compte les WE.

est ce qu'il serait assez facile de mettre en place cette solution ?
est ce que vous auriez des infos, des morceaux de codes ou autre pour m'aider ?

J'ai regardé sur le forum et sur MartinScott, mais j'ai pas vraiment trouvé l'info dont j'ai besoin ou alors il faut que j'aille chercher un autre café !!! :(

Merci d'avance
Cordialement.

MessagePublié: 16 Sep 2010 à 10:18
par nemrod93
Bonjour,

Tu as regardé du côté de @WeekDay?

MessagePublié: 16 Sep 2010 à 10:19
par Michael DELIQUE
salut

regarde ici si tu ne trouve aps ton bonheur => https://www.martinscott.com/DesignLibra ... count=5000

MessagePublié: 16 Sep 2010 à 14:54
par Bidouille
@Michael

Hé hé....
j'aurais eu la meme reaction !! ;-)
Ce site est une mine

MessagePublié: 16 Sep 2010 à 15:10
par Michael DELIQUE
le Martin Scott est un grand classique !

c'est un membre du pénumbra si je ne me trompe

MessagePublié: 16 Sep 2010 à 15:47
par Bidouille
Tout à fait Michael

http://www.penumbra.org/index-1.htm

dans le bandeau de gauche ;-)

MessagePublié: 17 Sep 2010 à 07:09
par lebanner
Bonjour,

Finalement, je suis parti en LS

Voici ce que j'ai fais :
Code : Tout sélectionner
Dim recupdate As New NotesDateTime (doc.Date_mar(0))
Call recupdate.AdjustDay(1)
recupval = Weekday(recupdate)
If recupval = "1" Or recupval = "7" Then
      Call recupdate.AdjustDay(1)
      recupval = Weekday(recupdate)
      If recupval = "1" Or recupval = "7" Then
         Call recupdate.AdjustDay(1)
      End If
End If


et une erreur "type mismatch" sur cette ligne :
Code : Tout sélectionner
recupval = Weekday(recupdate)


le code est brut de fonderie, il sera amélioré après

Merci d'avance

Cordialement

MessagePublié: 17 Sep 2010 à 07:12
par lebanner
Je viens de trouver la solution :

j'ai rajouté un .dateOnly.

ligne correcte :
Code : Tout sélectionner
recupval = WeekDay(recupdate.DateOnly)


Je vous laisse je dois aller me chercher un caffé.

Ciao

MessagePublié: 17 Sep 2010 à 07:15
par LSong
Code : Tout sélectionner
   Dim recupdate As New NotesDateTime (Now)
   Dim recupval As Integer
   Call recupdate.AdjustDay(1)
   recupval = Weekday(recupdate.DateOnly)
   While recupval = "1" Or recupval = "7"
      Call recupdate.AdjustDay(1)
      recupval = Weekday(recupdate)
   Wend


ca marchera mieux et un while est tout de meme plus élégant

MessagePublié: 17 Sep 2010 à 07:17
par lebanner
Voici le code final :
Code : Tout sélectionner
   Dim recupval As Integer
   Dim recupdate As New NotesDateTime (doc.Date_mar(0))
   Call recupdate.AdjustDay(1)
   recupval = Weekday(recupdate.DateOnly)
   If recupval = "7" Then
      Call recupdate.AdjustDay(2)   
   Elseif recupval = "1" Then
      Call recupdate.AdjustDay(1)
   End If


J'ai pas pensé au while, merci Lsong

Bonne journée
Cordialement