[access] ouverture formulaire recherche VBA
rodrigue62
Messages postés
190
Date d'inscription
Statut
Membre
Dernière intervention
-
magi123 Messages postés 18 Date d'inscription Statut Membre Dernière intervention -
magi123 Messages postés 18 Date d'inscription Statut Membre Dernière intervention -
Salut,
j'aimerai que lorsque je clique sur un bouton dans un formulaire celui ci en ouvre un autre (dont les tables sont liés), donc jusque la rien de compliqué (docmd.openform) mais ce qui se complique c'est que je voudrais qu'il ne m'affiche que les enregistrement ou la clef etrangere corresponde à la clef primaire de l'enregistrement sous lequel j'ai cliqué sous le premier formulaire.
Pour récupérer la valeur de la clef primaire dans le premier formulaire je sais comment faire (forms![nom du forms]![nom du champ].value) ce que je ne sais pas faire c'est ouvrir dans le second formulaire que les enregistrements correspondant à cette valeur. En gros ca revient à faire un tri sur un champ mais je ne sais pas comment faire en VBA.
j'aimerai que lorsque je clique sur un bouton dans un formulaire celui ci en ouvre un autre (dont les tables sont liés), donc jusque la rien de compliqué (docmd.openform) mais ce qui se complique c'est que je voudrais qu'il ne m'affiche que les enregistrement ou la clef etrangere corresponde à la clef primaire de l'enregistrement sous lequel j'ai cliqué sous le premier formulaire.
Pour récupérer la valeur de la clef primaire dans le premier formulaire je sais comment faire (forms![nom du forms]![nom du champ].value) ce que je ne sais pas faire c'est ouvrir dans le second formulaire que les enregistrements correspondant à cette valeur. En gros ca revient à faire un tri sur un champ mais je ne sais pas comment faire en VBA.
A voir également:
- [access] ouverture formulaire recherche VBA
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook - Guide
- Recherche automatique des chaînes ne fonctionne pas - Guide
- Formulaire de reclamation instagram - Guide
- Page d'ouverture google - Guide
9 réponses
c'est bon j'ai trouvé je mets donc la requête a attacher pour ceux que ca interresse:
SELECT LIVRAISON.N°LIVRAISON, LIVRAISON.N°CLIENT, LIVRAISON.N°GROUPE_LIVRAISON
FROM TOURNEE INNER JOIN LIVRAISON ON TOURNEE.N°GROUPE_LIVRAISON = LIVRAISON.N°GROUPE_LIVRAISON
WHERE (((LIVRAISON.N°GROUPE_LIVRAISON)=[forms]![TOURNEE]![N°GROUPE_LIVRAISON].[value]));
SELECT LIVRAISON.N°LIVRAISON, LIVRAISON.N°CLIENT, LIVRAISON.N°GROUPE_LIVRAISON
FROM TOURNEE INNER JOIN LIVRAISON ON TOURNEE.N°GROUPE_LIVRAISON = LIVRAISON.N°GROUPE_LIVRAISON
WHERE (((LIVRAISON.N°GROUPE_LIVRAISON)=[forms]![TOURNEE]![N°GROUPE_LIVRAISON].[value]));
Bonjour,
comment faire pour creer dans la zone détail d'un formulaire, la commande " filter par formulaire " .
comment faire pour creer dans la zone détail d'un formulaire, la commande " filter par formulaire " .
j'ai essayé la commande suivante:
LIVRAISON.Filter = "N°GROUPE_LIVRAISON = TOURNEE!N°GROUPE_LIVRAISON.Value"
ou LIVRAISON est mon second formulaire a ouvrir depuis le premier qui est TOURNEE, et N°GROUPE_LIVRAISON et le nom du champ sur lequel il faut faire le tri, mais ca ne marche pas , ce code cré une erreur.
LIVRAISON.Filter = "N°GROUPE_LIVRAISON = TOURNEE!N°GROUPE_LIVRAISON.Value"
ou LIVRAISON est mon second formulaire a ouvrir depuis le premier qui est TOURNEE, et N°GROUPE_LIVRAISON et le nom du champ sur lequel il faut faire le tri, mais ca ne marche pas , ce code cré une erreur.
salut,
essaie simplement:
DoCmd.OpenForm "LIVRAISON",,"N°GROUPE_LIVRAISON=Forms!TOURNEE!N°GROUPELIVRAISON"
(Si j'ai bien compris le mon des tables et des champs...)
essaie simplement:
DoCmd.OpenForm "LIVRAISON",,"N°GROUPE_LIVRAISON=Forms!TOURNEE!N°GROUPELIVRAISON"
(Si j'ai bien compris le mon des tables et des champs...)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bien vu zenon, il est vrai que le 3eme parametre de la comande openform est nomfiltre, mais je viens d'essayer la ligne de commande que tu as donnée, ca marche pas ca ouvre le formulaire avec tous les enregistrements. Mais deja merci c'est une piste je vais m'interresser plus a la commande openform plutot que de chercher une commande filter, et je vais bien voir si il y a pas moyen de faire ce que je veux.
en fait le nomfiltre doit faire appel à une requête ou un nom de filtre. J'ai donc cré la requete suivante:
SELECT LIVRAISON.N°LIVRAISON, LIVRAISON.N°CLIENT, TOURNEE.N°GROUPE_LIVRAISON
FROM TOURNEE INNER JOIN LIVRAISON ON TOURNEE.N°GROUPE_LIVRAISON=LIVRAISON.N°GROUPE_LIVRAISON
WHERE FORMS!LIVRAISON!N°GROUPE_LIVRAISON.value=FORMS!TOURNEE!N°GROUPE_LIVRAISON;
et j'ai attaché son nom a la commande openform, mais desormais ca m'ouvre un formulaire vierge. Je crois commencer à etre sur la bonne voie et ce grace a zenon si quelqu'un pouvait me donner un petit coup de pouce pour avancer plus vitte, car en fait c'est assez urgent
SELECT LIVRAISON.N°LIVRAISON, LIVRAISON.N°CLIENT, TOURNEE.N°GROUPE_LIVRAISON
FROM TOURNEE INNER JOIN LIVRAISON ON TOURNEE.N°GROUPE_LIVRAISON=LIVRAISON.N°GROUPE_LIVRAISON
WHERE FORMS!LIVRAISON!N°GROUPE_LIVRAISON.value=FORMS!TOURNEE!N°GROUPE_LIVRAISON;
et j'ai attaché son nom a la commande openform, mais desormais ca m'ouvre un formulaire vierge. Je crois commencer à etre sur la bonne voie et ce grace a zenon si quelqu'un pouvait me donner un petit coup de pouce pour avancer plus vitte, car en fait c'est assez urgent
Excuse-moi, je pense que j'ai oublié une virgule: si on l'ajoute, on peut encoder directement l'expression Where et les critères devraient fonctionner sans faire appel à un filtre...