Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

excuter une procédure tous les X ut

honoran

XLDnaute Nouveau
Bonjour à tout le monde,

Je souhaite exécuter une procédure toutes les 5 minutes. Après avoir recherché des informations sur la facon de faire, J'ai programmé celle ci:

Code:
Sub ecriture()

    '****** déclaration des variables ******
    Dim PathFic As String
    Dim Nombdd As String
    
    '****** initialisation des variables ******
    PathFic = "C:\Documents and Settings\"
    Set BddAccess = CreateObject("Access.application")
    Nombdd = "visu.mdb"
    Set BddAccess = DBEngine.OpenDatabase(PathFic & Nombdd)
    
    'appel des procédures d'enregistrement des données de la visu dynamique
    Call tesytoto("NM 38", "NM38")
    Call tesytoto("NM 39", "NM39")
 
    '****** fermeture de la base de données
    BddAccess.Close
    Set BddAccess = Nothing
    
    '****** recommencer un enregistrement dans 5 minutes
    [B]Excel.Application.OnTime Now + TimeValue("00:05:00"), "ecriture"[/B]
    
End Sub

Mon problème est le suivant:
la procédure ecriture s'est exécuté à :
...
11:01:34
11:02:17
11:02:26
11:05:53
11:06:39
11:07:21
...

L'intervalle d'exécution n'est pas de 5 min mais à priori aléatoire.

Si quelqu'un peut m'expliquer l'erreur que j'ai faite ou connait une autre méthode que celle employé, je suis preneur.

Merci à tous.
 

Ashaar

XLDnaute Junior
Re : excuter une procédure tous les X ut

Bonjour,

Essaye de remplacer ton code par :

RunWhen = Now + TimeSerial(0, 5, 0)
Application.OnTime earliesttime:=RunWhen, procedure:= "ecriture", schedule:=True

Chez moi cela fonctionne correctement.
 

honoran

XLDnaute Nouveau
Re : excuter une procédure tous les X ut

Merci Ashaar pour avoir répondu et surtout aidé.

Donc après plusieurs essais, le code que tu m'as fourni fonctionnement correctement pour moi aussi.

Encore merci pour ton aide
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…