Lancement automatique requetes

timay83 -  
Capitaine_sollo Messages postés 33 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je travaille sur une base de données access ou un certain nombre d'opérations sont réalisées systèmatiquement à l'ouverture de la bdd pour mettre à jour les informations à partir de données externes.

Ces requêtes sont de type Access (selection, création de table, mise à jour, etc.) et j'aimerais automatiser l'exécution de ces requêtes à l'ouverture ou en appuyant sur un bouton afin de ne pas les exectuer toutes manuellement.

Puis je lancer ces execution par macro ou dois je convertir ces requetes en sql ou autre ?

Merci !

4 réponses

castours Messages postés 2955 Date d'inscription   Statut Membre Dernière intervention   217
 
bonjour
tu peux faire un formulaire avec des boutons pour lancer chaque requête . Tu fais ta requête, puis dans ton formulaire independant , tu creais un bouton avec l'aide de la boite outil, ouverture formulaire.
0
Tessel75
 
Bonjour,
Comme le dit Castours (que je salue au passage), le mieux est de construire un formulaire avec un bouton de commande qui lancerait les requêtes. Pour ce qui est des requêtes elles-mêmes, il existe une commande de macro pour exécuter les requêtes, après il te suffit de les enchainer automatiquement dans ta macro; mais ce serait mieux, sans être obligé, de le faire avec VBA.
Bonne suite.
0
timay83
 
Merci, en effet j'ai fait une macro qui lance succéssivement mes requêtes. Par contre certaines ne fonctionnaient pas sous ce mode (impossible de modifier la table car elle est utilisée etc.)

J'ai contourné mon problème en lançant la macro au démarrage et ça semble fonctionner.
0
Capitaine_sollo Messages postés 33 Date d'inscription   Statut Membre Dernière intervention   1
 
Bonjour,
personnellement je trouve ça beaucoup plus simple aen vba directement.

Tu crées un bouton, et tu exécutes la commande
docmd.openquery "NomDetarequete1", acNormal
docmd.openquery "NomDetarequete2", acNormal

etc...
Si tu as des requêtes à jour tu as intérêt à enlever les messages d'avertissement avant de lancer des requêtes, et de les rétablir à la fin de ta fonction.
Docmd.setWarnings False
Docmd.setWarnings True

Bye
Capitaine sollo


0