Bonjour à tous.
est-il possible d'automatiser une requête, avec une sorte de "timer" pour que celle-ci se reproduise à intervalle régulier, sans intervention de l'utilisateur.
Si oui, quelle piste à explorer..?
Bonjour à tous.
est-il possible d'automatiser une requête, avec une sorte de "timer" pour que celle-ci se reproduise à intervalle régulier, sans intervention de l'utilisateur.
Si oui, quelle piste à explorer..?
Salut,
Avec du VBA...
Et dans ton code pour la requête :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Public Sub Attendre(Optional iSecondes As Integer = 0, Optional bHrglass As Boolean = True) Dim lfin As Long If bHrglass = True Then DoCmd.Hourglass bHrglass lfin = Timer + iSecondes Do DoEvents Loop Until Timer >= lfin If bHrglass = True Then DoCmd.Hourglass False End Sub
@+.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4Timer1: Attendre (30 * 60) 'attente de 30mn DoCmd.OpenQuery "REQUETE" GoTo Timer1
bonjour,
et merci zoom61 pour cette piste de travail.
dans cette hypothèse, Access doit rester "ouvert" en permanence bien sur.
Par contre, je ne comprends pas bien, la requêteSQL doit être crée en VBA..?
Merci
Non, DoCmd.OpenQuery "REQUETE", c'est la commande qui permet d'appeler une requête.
@+.
Re bonjour,
et re-merci !
malgré tout, je crois qu'il va falloir que je passe quand même par le vba, car j'ai besoin d'une requête qui selon le résutat envoie un e-mail à une ou plusieurs adresses définies au départ avec comme contenu le résultat de la requête.
En clair, j'ai une table qui se nomme "reactifs_volatils" avec des champs:
"ReactRef", "React_Utilisation", "React_Valeur".
cette table est mise à jour plusieurs centaine de fois par jour par des dizaines d'utilisateurs.
Mon but est de déclancher l'envoi d'un mail auto si la valeur de "React_Valeur"est > à 2 avec dans le mail un message du style:
Attention : pour "ReacRef"et React_Utilisation", la valeur est supérieure à 2("React_Valeur")
je souhaiterais que cette procédure se répète toutes les 30 minutes par exemple.
Je crois qu créer la requête en vba est trop dur pour moi..
Voici le code pour exécuter une requête en VBA :
Code vba : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SQL = "SELECT ReactRef, React_Utilisation, React_Valeur FROM reactifs_volatils" Set oSQL = CurrentDb.OpenRecordset(SQL) Do Until oSQL.EOF If Dir(oSQL("React_Valeur")) > 2 Then 'Commande d'envoi des mails End If oSQL.MoveNext Loop
@+.
je rougis de mon ignorance..!!
mais où dois-je placer ces codes..?
faut-il que je crée un module à cet effet..?
Partager