MsgBox apparait trop de fois

empereurtilleul -  
 empereurtilleul -
Bonjour,

J'ai un probleme avec le code suivant:
Sub Alerte()

    Application.OnTime TimeValue("05:45:00"), "Main"
    Application.OnTime TimeValue("07:15:00"), "Main"
    Application.OnTime TimeValue("09:05:00"), "Main"
    Application.OnTime TimeValue("10:40:00"), "Main"
    Application.OnTime TimeValue("12:10:00"), "Main"
    Application.OnTime TimeValue("13:30:00"), "Main"
    Application.OnTime TimeValue("15:00:00"), "Main"
    Application.OnTime TimeValue("16:30:00"), "Main"
    Application.OnTime TimeValue("18:25:00"), "Main"
    Application.OnTime TimeValue("19:55:00"), "Main"
End Sub

Sub Main()

    Call Actualiser
    Call Camion
    
End Sub

Sub Camion()

    MsgBox "CAMION! Préparer Mallette"
End Sub
Sub Actualiser()
'
' Actualiser Macro
'

'
    Sheets("Stock").Select
    Selection.ListObject.QueryTable.Refresh BackgroundQuery:=False
    Sheets("Main").Select
End Sub


En effet, lorsqu'on arrive à l'heure défini, le MsgBox "CAMION! Préparer Mallette" apparaît bien plus qu'une fois.
Quelle est mon problème?

Merci d'avance

Configuration: Windows / Chrome 91.0.4472.77

2 réponses

  1. JCB40 Messages postés 3063 Date d'inscription   Statut Membre Dernière intervention   479
     
    Bonjour,
    Un exemple de votre fichier avec explications serait le bienvenu.
    Pour transmettre un fichier,
    Veillez à ce qu'il n'y ait PAS DE DONNEES CONFIDENTIELLES
    il faut passer par un site de pièce jointe tel que cjoint.com

    Allez sur ce site : https://www.cjoint.com/
    Clic sur parcourir,
    Cherche ton fichier,
    clic sur ouvrir,
    Clic sur "Créer le lien cjoint",
    Copier le lien,
    Revenir ici le coller dans une réponse...
    Cordialement

    0
  2. empereurtilleul
     
    https://www.cjoint.com/c/KFql6YBKR0E

    Le principe de ce code est d'etre alerté 20min avant l'arrivée du camion et d'actualiser le fichier "Stock" (qui provient d'un fichier externe). Il y a 10 camions par jour, d'où l’intérêt d'avoir plusieurs "Application.OnTime".

    Néanmoins, le message apparait beaucoup de fois alors que je veux qu'il apparait une seule fois.
    0