VBA

VBA – Lancer un programme à une heure donnée

Temps de lecture < 1 minute

Le code suivant va vous permettre de lancer un programme à une heure donnée.

Lancer un programme à une heure donnée

Voici un code qui va lancer un programme tous les jours à 7h du matin

Dim Lheure As Double

Public Sub LancerTimer()
    'L'application ExecutionTimer se lancera tous les jour à 7h du matin pour exécuter le programme ExecutionTimer
    Application.OnTime TimeValue("07:00:00"), "ExecutionTimer"
End Sub

'Pour arrêter le timer, il suffit d'appeler cette procédure.
Public Sub ArretTimer()
On Error Resume Next
      Application.OnTime Lheure, "ExecutionTimer", , False
End Sub

Public Sub ExecutionTimer()
      'code à exécuter à la fin de chaque appel
      'Votre code ici
      MsgBox "Bonjour"

      'Si vous voulez de nouveau relancer le programme après le même intervalle, vous pouvez ajouter cet appel récursif.
      Lheure = Now + TimeSerial(0, 0, 10)
      Application.OnTime Lheure, "ExecutionTimer"
End Sub

Lancer un programme après un délai en minute ou seconde

Copier simplement ce code dans un module pour lancer la procédure de test, ExecutionTimer, à chaque fois que le délai en seconde est atteint

Dim Lheure As Double
Dim Interval As Long

Public Sub LancerTimer()
    'L'application ExecutionTimer se lancera après 0 heure, 0 minute et Interval seconde
    Interval = 10
    Application.OnTime Now + TimeSerial(0, 0, Interval), "ExecutionTimer"
End Sub

'Pour arrêter le timer, il suffit d'appeler cette procédure.
Public Sub ArretTimer()
On Error Resume Next
      Application.OnTime Lheure, "ExecutionTimer", , False
End Sub

Public Sub ExecutionTimer()
      'code à exécuter à la fin de chaque appel
      'Votre code ici
      MsgBox "Bonjour"

      'Si vous voulez de nouveau relancer le programme après le même intervalle, vous pouvez ajouter cet appel récursif.
      Lheure = Now + TimeSerial(0, 0, 10)
      Application.OnTime Lheure, "ExecutionTimer"
End Sub

Related posts

VBA – Enlever les accents

Frédéric LE GUEN

Numéro de semaine à partir d’une date

Frédéric LE GUEN

VBA – Boite de dialogue « Fichier »

Frédéric LE GUEN

1 commentaire

Mohammed Ghziel 08/10/2020 at 11:25

Bonjour,

J'ai un problème si vous pouvez m'aider, j'ai une extraction de données J'ai la date et l'heure de l'opération (du système), mon doute est de savoir comment a changé le début d'une journée le 24 heures de 6 heures du matin le jour J à 6 heures du jour J + 1, en détail : j'ai 3 équipes de 6-14, 14-22, 22-6, je veux par exemple voir le rapport de production de l'équipe 3 de la date J : alors excel donne moi le résultat suivant (à partir de 22h à 00h du jour J + de 00h à 6h du jour J + 1).

Répondre

Laissez un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Ce site utilise des cookies pour améliorer votre expérience et vos recherches. Nous pensons que vous êtes dʼaccord sur ce principe mais vous pouvez refuser cette option. Accepter Continuer

Privacy & Cookies Policy