Excel Exercice
Tout savoir sur Excel
  • YouTube
  • Instagram
  • TikTok
  • Facebook
RSS
  • Quiz
  • Formation
  • Exercices
  • Offre entreprise
  • Tous les articles
  • Boutique
  • 0 Article
  • Se connecter
    • ↩ Se déconnecter

VBA – Lancer un programme à une heure donnée

Catégorie : VBA
Dernière mise à jour le 21/04/2024
Temps de lecture : 2 minutes
Nombre de vues : 5 264

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

Frédéric Le Guenex-Microsoft MVP 2010-2025
VBAMis à jour le 21/04/20242 min de lecture

Dans cet article

  • Lancer un programme VBA à une heure donnée
  • Lancer un programme après un délai en minutes ou secondes
  • Articles liés

Lancer un programme VBA à 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 minutes ou secondes

Copiez simplement ce code dans un module pour lancer la procédure de test, ExecutionTimer, à chaque fois que le délai en secondes 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

Articles liés

  • VBA – Changer la date et l’heure d’un fichier
  • VBA – Comment ouvrir la boite de dialogue Fichier ?
  • VBA : Gérer les menus et les barres d’outils avec CommandBar
  • Analyseur de code VBA – Rubberduck
  • Enlever les accents dans vos cellules par VBA
  • Répartition des dépenses avec Excel et le VBA

Vous trouverez des informations complémentaires sur le lancement automatique d'un programme sur le site de Microsoft.

✎

À vous de jouer

Des exercices Excel dans votre navigateur, corrigés automatiquement.

Faire un exercice

Frédéric LE GUEN

heure, programmation, VBA

1 commentaire

  1. Mohammed Ghziel
    08/10/2020 @ 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

Laisser un commentaire Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. Découvrez comment les données de vos commentaires sont traitées.

image exercice site

VBA – Lancer un programme à une heure donnée

Reading time: 2 minutes
Nombre de vues : 5 264
Dernière mise à jour le 21/04/2024

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

Frédéric Le Guenex-Microsoft MVP 2010-2025
VBAMis à jour le 21/04/20242 min de lecture

Dans cet article

  • Lancer un programme VBA à une heure donnée
  • Lancer un programme après un délai en minutes ou secondes
  • Articles liés

Lancer un programme VBA à 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 minutes ou secondes

Copiez simplement ce code dans un module pour lancer la procédure de test, ExecutionTimer, à chaque fois que le délai en secondes 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

Articles liés

  • VBA – Changer la date et l’heure d’un fichier
  • VBA – Comment ouvrir la boite de dialogue Fichier ?
  • VBA : Gérer les menus et les barres d’outils avec CommandBar
  • Analyseur de code VBA – Rubberduck
  • Enlever les accents dans vos cellules par VBA
  • Répartition des dépenses avec Excel et le VBA

Vous trouverez des informations complémentaires sur le lancement automatique d'un programme sur le site de Microsoft.

✎

À vous de jouer

Des exercices Excel dans votre navigateur, corrigés automatiquement.

Faire un exercice
Étiquettes : heureprogrammationVBA
Frédéric LE GUEN

Newsletter

1 fois par mois :
Astuces et quiz

    Nous ne vous enverrons pas de spam. Vous pouvez vous désabonner à tout moment.

    Built with Kit

    1 commentaire

    1. Mohammed Ghziel
      08/10/2020 @ 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

    Laisser un commentaire Annuler la réponse

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

    Ce site utilise Akismet pour réduire les indésirables. Découvrez comment les données de vos commentaires sont traitées.

    À propos
    Contact
    Mentions légales
    CGV

    © 2002 – 2026 – https://excel-exercice.com. Tous droits réservés.
    Site géré par le majordome du net

    À propos
    Contact
    Mentions légales
    CGV

    © 2026 – https://excel-exercice.com. Tous droits réservés.
    Site géré par le majordome du net