IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Exécution de macro à des heures différentes.


Sujet :

Access

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 21
    Par défaut Exécution de macro à des heures différentes.
    Comment exécuter une macro à des heures différentes de la journée?

  2. #2
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 525
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 525
    Billets dans le blog
    67
    Par défaut
    Salut,

    Il te faut un formulaire qui reste ouvert en permanence (formulaire caché)
    et utiliser la propriété Timer de ce form:


    Tu règle sa propriété TimerInterval à 60000 (toute les minutes par ex

    et tu mets sur l'évenement timer de ton form:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub Form_Timer()
     
       If Time = #3:35:00 PM# Then
       DoCmd.RunMacro "Macro1"
       End If
     
    End Sub

    Dans cette exemple on teste toute les minutes si il est 15:35,
    si c'est le cas alors la macro1 est exécuté.

    Remarque tu peux paramétré toi même l'heure à laquelle tu souhaite exécuter la macro avec une variable public date_event:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
       if Time=TimeValue(date_event) Then
       DoCmd.RunMacro "Macro1"
       End if
    @+
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  3. #3
    Membre émérite
    Inscrit en
    Septembre 2005
    Messages
    617
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 617
    Par défaut
    Dans un formulaire indépendant, tu fais un timer qui controle l'heure... Tu stocke le nom des macros dans une table, et l'heure correspondante et tu le lance si l'heure est bonne.

  4. #4
    Membre émérite
    Inscrit en
    Septembre 2005
    Messages
    617
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 617
    Par défaut
    Comme dis User sauf que tu stocke le nom de la macro et l'heure dans une table à part

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 21
    Par défaut
    OK merci beaucoup!!

    Et si je veux que la macro s'exécute à chaque heure précise de la journée.

    Donc ex. à 12:00 13:00 14:00 ... etc.

    Car dans le cas de user, si je ferme la form et que je la réouvre, je devrais techniquement attendre au prochain 3:35.

    J'aimerais par exemple que, une fois la form ouverte, exécute quand même la macro a la prochaine heure fix.


    Merci!

  6. #6
    Membre éprouvé Avatar de foste
    Inscrit en
    Octobre 2002
    Messages
    145
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 145
    Par défaut
    testes les minutes du timer, si le resultat est =0, c'est une heure ronde.
    Mais ca sous-entend que tu testes toutes les minutes.
    Carine

Discussions similaires

  1. Réponses: 1
    Dernier message: 12/08/2009, 11h04
  2. [WD-2007] Exécution très lente des macros
    Par bibendum7302 dans le forum VBA Word
    Réponses: 10
    Dernier message: 22/06/2009, 12h27
  3. Exécuter une macro parmi des macro créées, de manière aléatoire.
    Par jeanmarccassis dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 21/12/2008, 03h04
  4. Réponses: 27
    Dernier message: 05/09/2008, 17h01
  5. Réponses: 11
    Dernier message: 29/05/2008, 16h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo