|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Nouveau Membre du Club
![]() patrick delavyInscription : mars 2010 Messages : 120 ![]() |
Bonjour le forum.
Voici mon problème. Je ne sais pas comment vous l'expliquer, je vais essayer d'être clair Quand je clique sur un bouton, j'ouvre un formulaire déroulant pour sélectionner un enregistrement dans une table. En sélectionnant l'enregistrement, j'ouvre un formulaire reprenant les données de l'enregistrement. Dans ce formulaire, il y a un sous formulaire qui reprend les données d'une autre table liée par une requête. Mon soucis est qu'à l'ouverture du formulaire, il affiche tous les enregistrements et dans le sous formulaire je retrouve bien mes informations liées à la sélection de départ du menu déroulant. Pouvez vous m'aider car je ne n'arrive pas à cerner le problème. ![]() Merci à tous et bonne journée |
|
|
00
|
|
|
#2 |
![]() ![]() Jean BALLATInscription : octobre 2004 Messages : 2 856 ![]() |
![]() Peux-tu nous indiquer le code que tu as mis dans l'évènement Clic du bouton ? il semblerait qu'il manque une valeur dans l'argument WHERE de l'appel d'ouverture du formulaire : Code VBA :
DoCmd.OpenForm "MonForm", acNormal, , "Monchamp = " & Me.ChampCritère
__________________
Jeannot Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
|
|
|
00
|
|
|
#3 |
|
Nouveau Membre du Club
![]() patrick delavyInscription : mars 2010 Messages : 120 ![]() |
Bonjour Jeannot45 et merci de ton aide.
Je pense que tu parles du formulaire de sélection avant ouverture du formulaire contenant le sous formulaire. L'évènement se produit sur "après MAJ" et le code est le suivant.Merci et bonne journée |
|
|
00
|
|
|
#4 |
![]() ![]() Jean BALLATInscription : octobre 2004 Messages : 2 856 ![]() |
![]() Il te suffit donc d'ajouter l'argument WHERE dans la syntaxe d'ouverture de ton formulaire. Voir post précédent
__________________
Jeannot Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
|
|
|
00
|
|
|
#5 |
|
Nouveau Membre du Club
![]() patrick delavyInscription : mars 2010 Messages : 120 ![]() |
Bonjour Jeannot45,
Peux tu me dire à quoi correspond "Monchamp = " & Me.ChampCritère. Est ce que "Monchamp = " correspond au champ père du formulaire et donc Me.ChampCritère au champ fils ?? Car j'ai un message d'erreur de syntaxe (opérateur absent) dans l'expression. Bonne journée |
|
|
00
|
|
|
#6 |
![]() ![]() Jean BALLATInscription : octobre 2004 Messages : 2 856 ![]() |
Re,
Champ père et champ fils en quelque sorte. Mais comme tu ouvres un autre formulaire, il te faut passer la valeur de ta sélection. Ainsi, si dans le formulaire principal, tu as une liste qui s'appelle cboClient (affichant la liste des clients te permettant d'afficher toutes leurs commandes), tu retrouveras, dans le second formulaire que tu vas ouvrir, le nom de ton client (mais aussi son code). MonChamp correspond donc au champ CodeClient du second formulaire et Me.ChampCritere correspond au champ liste déroulante cboClient du formulaire principal
__________________
Jeannot Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
|
|
|
00
|
|
|
#7 |
|
Nouveau Membre du Club
![]() patrick delavyInscription : mars 2010 Messages : 120 ![]() |
Re,
Cela ne fonctionne pas. Peut être que le problème vient du fait que je sélectionne le (cboClient) dans un formulaire précédent qui ouvre le formulaire principal ou s'affiche le (cboClient) et le sous formulaire qui affiche les détails. |
|
|
00
|
|
|
#8 |
![]() ![]() Jean BALLATInscription : octobre 2004 Messages : 2 856 ![]() |
![]() Voici ci-joint une petite base de données qui reprend ta thématique d'ouverture de formulaire à partir d'une sélection dans un autre formulaire. Tu ouvres le formulaire : F_AppelAdherent Bonne continuation
__________________
Jeannot Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
|
|
|
00
|
|
|
#9 |
|
Nouveau Membre du Club
![]() patrick delavyInscription : mars 2010 Messages : 120 ![]() |
Bonjour Jeannot45 et merci de ton aide.
J'ai regardé la base que tu m'as envoyé. En comparant avec ma base, je n'ai pas l'impression d'avoir oublié quelquechose mais j'ai toujours le même message "erreur de syntaxe (opérateur absent) dans l'expression". Je te joins ma base. Si tu peux m'expliquer ce que j'ai raté Bonne journée |
|
|
00
|
|
|
#10 | ||
![]() ![]() Jean BALLATInscription : octobre 2004 Messages : 2 856 ![]() |
![]() Je viens de regarder ta base. L'erreur vient de ce que tu récupères le nom de l'agent donc du texte et donc cela doit apparaitre dans ta syntaxe: Code VBA :
Bonne continuation
__________________
Jeannot Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
|
||
|
|
00
|
|
|
#11 |
|
Nouveau Membre du Club
![]() patrick delavyInscription : mars 2010 Messages : 120 ![]() |
Re,
Trop fort ![]() Par contre je viens de me rendre compte que je ne pouvais pas faire de modification dans le sous formulaire. Est ce normal ??? |
|
|
00
|
|
|
#12 |
![]() ![]() Jean BALLATInscription : octobre 2004 Messages : 2 856 ![]() |
![]() C'est normal puisqu'il n'y a pas de clé primaire définie. Tu passes en mode création sur la table "Table Agents", tu selectionnes le champ NOM2 et tu cliques sur l'outil "Clé Primaire". Je te conseille la lecture du tuto sur "Access - Les Bases", car il me semble que tu passes à côté de quelque chose d'important.
__________________
Jeannot Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
|
|
|
00
|
|
|
#13 |
|
Nouveau Membre du Club
![]() patrick delavyInscription : mars 2010 Messages : 120 ![]() |
Bonjour Jeannot45 et merci de ton aide.
en effet cela venait de la clé primaire Le problème est résolu Bonne journée à tous |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com