Bonjour, je souhaiterais créer un bouton sur un formulaire qui me permette :
- d'ouvrir une requête existante en mode création
- de la fermer
- et d'ouvrir un état basé sur cette requête
Est-ce possible ?
Merci
Bonjour, je souhaiterais créer un bouton sur un formulaire qui me permette :
- d'ouvrir une requête existante en mode création
- de la fermer
- et d'ouvrir un état basé sur cette requête
Est-ce possible ?
Merci
Peux-tu nous expliquer le but de ta manipulation je pense qu'il y a certainement un autre moyen.
J'ai essayé en fait de faire des filtres sur un formulaire principal, et j'ai mis le résultat dans un sous-formulaire.
Mes filtres sont des listes déroulantes indépendantes qui me permettent de choisir d'afficher du personnel :
- par année de naissance :
- par ville :
- par code service :
L'utilisateur veut pouvoir par exemple choix tous les gens dont les codes services sont entre 100 et 200. Pour ce faire j'ai fait deux filtres : code service 1 et code service 2. Ca marche !
Mais la personne a des demandes très variables et complexe, je ne peux pas tout programmer. Elle aimerait pouvoir ouvrir la requête en mode création pour rentrer les critères : >= code , entre code 1 et code 2 , ...
Tout ceci avec un cumul de plusieurs filtres.
Et à chaque fois, il doit en résulter un état.
C'est pour cela que je vous demandait ça.
Hello,
il suffit de baser ton état sur une requête et de changer le code SQL de la requête par VBA.
Code : Sélectionner tout - Visualiser dans une fenêtre à part CurrentDB.QueryDefs("MaRequête").SQL = "SELECT ... FROM ... WHERE ..."
La méthode est bonne mais c'est un utilisateur de base qui devra se modifier tout seul les critères. En SQL, cela me parait difficile ...
hum...
Dans ton formulaire, tu peux faire des zones de texte, des cases à cocher, des listes déroulantes qui permettent donc à l'utilisateur de renseigner les critères (de recherche ou d'insertion ou de modification ou peu importe)...
A partir de là, lors d'un évènement (clic sur un bouton ou autre), tu peux récupérer les valeurs de tes éléments contenus dans le formulaire et écrire ainsi dynamiquement ta requête SQL...
cela peut correspondre à ce que tu cherches ?
C'est au développeur qu'il revient d'interfacer cette modif ...
Envoyé par fpecastaing
Bonjour,
Comme le dis Cafeine c'est à toi de créer la form avec les différents critères, et Gary t'a donné l’idée de créer une requête dynamique.
A+
Bonjour,
Regarde mon tuto sur la recherche...
il convient tout à fait à ce genre d'utilisateur.
Cordialement,
ok je vous remercie pour toute ces infos, je mets desuite en pratique. Je m'excuse pour avoir mis tant de temps à répondre mais j'étais en week-end prolongé et je n'ai accès au PC que depuis le boulot.
A+. Je vous tiens au courant avant de mettre "résolu"
Fred
J'avais oublié un élément. Avant de sortir un état, la personne doit pouvoir avoir les résultats sur un formulaire pour y travailler. Puis en appuyant sur un bouton, un état est généré avec tous les enregistrements du formulaire à l'instant T.
Donc, si je comprends bien :
- je fais un formulaire avec des zones de texte vides pour que l'utilisateur écrivent les critères. Est-ce que je peux insérer des zones de listes déroulantes liées à une table ou requête à ce niveau pour lui faciliter la saisie ?
- je crée un bouton sur ce formulaire qui va me permettre de générer un 2ème formulaire où j'aurais mes résultats. Est-ce que ça peut être un sous-formulaire du formulaire de recherche précédent ?
- Ce 2ème formulaire est basé sur une requête SQL qui reprend ce qui est écrit dans les zones de texte du formulaire de recherche.
- je place un bouton sur ce 2ème formulaire qui m'ouvre un état listant les enregistrements.
C'est bien ça ?
Tout à fait
Ok alors c'est parti. Je vous tiens au courant.![]()
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager