|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Mak Mik Inscription : février 2010 Messages : 45 ![]() |
Bonjour à tous,
J'aimerais exécuter 4 requêtes suppressions toutes basées sur un même paramètre, une Date. Voici le bout de code: Code :
1- Quel est l'opérateur adéquat pour enchaîner les requêtes Delete? J'ai mis un "&" mais ça n'a pas l'air de fonctionner 2- Comment faire apparaître une boite de dialogue dans laquelle je pourrais choisir une date que j'aurai au préalable renseignée dans une liste? 3-Ma date à le format suivant "aaaa/ww", w, étant la semaine. Du coup je suis amenée à taper ceci par exemple : "2011/06" Dans access, aucun problème, il comprend que c'est une date et lorsque que je lui demande de supprimer toutes les cellules >= 2011/06, il le fait. Dans le code VBA j'ai l'impression qu'il ne le comprend plus. Merci, Julie |
||
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Pierre ANTOINEInscription : février 2008 Messages : 650 ![]() |
Bonjour
Je ne suis pas sûr que l'on puisse lancer une seule instruction SQL qui permette de supprimer des données sur plusieurs tables différentes. Pour ma part, j'utiliserai une boucle, en passant comme paramètre le nom de la table, le nom du champ critère, et la date, valeur du critère. Pour la boite de dialogue, il faut ruser. En fait il faut ouvrir un formulaire que l'on crée pour l'occasion, dans lequel il y a la liste des dates à prendre en compte. Pour la valeur du critère date, si j'ai bien compris il s'agit d'une période (une semaine étant une période commençant tel jour et finissant 7 jours plus tard). On peut soit transformer votre date access (2011/06) en un intervalle. Soit trouver dans VBA si on ne peut pas comparer des semaine. Mais là je ne sais pas. Pierre |
|
|
00
|
|
|
#3 | ||
|
Invité régulier
![]() Mak Mik Inscription : février 2010 Messages : 45 ![]() |
Merci bien pour ta réponse Pier.Antoine
Bon j'ai essayé de ruser comme tu me le conseilles mais je bute sur quelques points. Voici mon nouveau code Code :
Je ne peux pas enchaîner les "DoCmd.RunSQL"? J'ai créee une formulaire avec la combobx et les dates que je voulais y faire figurer, saurais-tu me dire ce que dois-je en faire maintenant? Merci à toi, Ju |
||
|
|
00
|
|
|
#4 | ||
|
Membre Expert
![]() Pierre ANTOINEInscription : février 2008 Messages : 650 ![]() |
Bonjour
Votre code comporte une erreur. Je ne sais si c'est à cause de cela que cela ne marche pas. En effet, vous utilisez une fonction. Or une fonction doit renvoyer un résultat. Or en l'occurence, ce dont vous avez besoin c'est de faire faire quelque chose, donc une procédure. Autrement dit, essayez votre code dans une procédure. Ceci dit, je pense que passer par une boucle serait plus efficace Code :
|
||
|
|
00
|
|
|
#5 | ||
|
Invité régulier
![]() Mak Mik Inscription : février 2010 Messages : 45 ![]() |
Merci pour cette réponse Pierre, c'est très gentil à vous.
toutefois vous sur-estimez mes compétences en VBA, je suis toute débutante :-) Voici le nouveau code, avec la boucle. Par contre je ne vois plus où se trouve l'erreur :s Code :
Ju |
||
|
|
00
|
|
|
#6 | ||
|
Membre Expert
![]() Pierre ANTOINEInscription : février 2008 Messages : 650 ![]() |
Bonjour
Je crois que je tenterais cela : Code :
Pierre |
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com