XL 2010 Evenement unique en fonction d'une date

Wyrgle

XLDnaute Junior
Bonjour à tous,

Je cherche à déclencher une sous-macro qui se déclenche une fois seulement après une date.
Ma macro principale tourne tous les jours de la semaine (jours travaillés seulement), et vérifie si on est le 16 mai (par exemple).
Si on est le 16 mai ou le 1er jour ouvré après le 16 mai, on appelle la sous-macro.
Sinon rien ne se passe.
Comment faire cela ?

Merci pour votre aide
 

patricktoulon

XLDnaute Barbatruc
une ebauche sur la base de staple
VB:
Sub test()
'test du 15 aout
    Dim lejour
    lejour = DateSerial(Year(Now), 5, 15)
    goodDay lejour
End Sub
Sub test2()
    lejour = Date
    goodDay lejour
End Sub
Sub test3()
'test du 1er janvier
    lejour = DateSerial(Year(Now), 1, 1)
    goodDay lejour

End Sub
Sub test4()
'test du 14 juillet
    lejour = DateSerial(Year(Now), 7, 14)
    goodDay lejour

End Sub
Sub test5()
'test du dimanche 25 aout
    lejour = DateSerial(Year(Now), 8, 25)
    goodDay lejour

End Sub

Sub goodDay(lejour)
    Dim d&, ouvré As Boolean
    d = Day(lejour)
    ouvré = Weekday(lejour) >= vbMonday And Weekday(lejour) <= vbFriday
    Select Case Month(lejour)
    Case 1
        j = 1
    Case 5
        j = 15
    Case 7
        j = 14
    Case 8

    Case Else
        ouvré = Weekday(lejour) >= vbMonday And Weekday(lejour) <= vbFriday

    End Select


    If Day(lejour) <> j And ouvré = True Then
        MsgBox "c'est bon Nous sommes le " & Format(lejour, "dddd dd mm yyyy"), vbCritical
    Else
        MsgBox "c'est pas bon Nous sommes le " & Format(lejour, "dddd dd mm yyyy")
    End If
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
311 733
Messages
2 082 015
Membres
101 868
dernier inscrit
pierreselo33