Lancement automatique requetes

Fermé
timay83 - 23 févr. 2015 à 10:12
Capitaine_sollo Messages postés 33 Date d'inscription mercredi 9 avril 2008 Statut Membre Dernière intervention 27 février 2015 - 27 févr. 2015 à 11:31
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 lundi 18 septembre 2006 Statut Membre Dernière intervention 31 août 2019 217
23 févr. 2015 à 11:17
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
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
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 mercredi 9 avril 2008 Statut Membre Dernière intervention 27 février 2015 1
27 févr. 2015 à 11:31
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