Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > IHM
IHM Ce forum est dédié aux questions relatives à la création de formulaires et d'états, avec ou sans code VBA, et macros.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/01/2012, 12h00   #1
Nouveau Membre du Club
 
patrick delavy
Inscription : mars 2010
Messages : 120
Détails du profil
Informations personnelles :
Nom : patrick delavy
Localisation : France

Informations forums :
Inscription : mars 2010
Messages : 120
Points : 31
Points : 31
Par défaut Affichage résultats dans sous formulaire

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
pat17 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 08h47   #2
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Homme Jean BALLAT
Inscription : octobre 2004
Messages : 2 856
Détails du profil
Informations personnelles :
Nom : Homme Jean BALLAT
Âge : 63
Localisation : France, Loiret (Centre)

Informations forums :
Inscription : octobre 2004
Messages : 2 856
Points : 5 220
Points : 5 220


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
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 14h10   #3
Nouveau Membre du Club
 
patrick delavy
Inscription : mars 2010
Messages : 120
Détails du profil
Informations personnelles :
Nom : patrick delavy
Localisation : France

Informations forums :
Inscription : mars 2010
Messages : 120
Points : 31
Points : 31
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.
Code :
DoCmd.OpenForm "MonForm", acNormal
Merci et bonne journée
pat17 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/01/2012, 08h58   #4
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Homme Jean BALLAT
Inscription : octobre 2004
Messages : 2 856
Détails du profil
Informations personnelles :
Nom : Homme Jean BALLAT
Âge : 63
Localisation : France, Loiret (Centre)

Informations forums :
Inscription : octobre 2004
Messages : 2 856
Points : 5 220
Points : 5 220


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
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/01/2012, 09h53   #5
Nouveau Membre du Club
 
patrick delavy
Inscription : mars 2010
Messages : 120
Détails du profil
Informations personnelles :
Nom : patrick delavy
Localisation : France

Informations forums :
Inscription : mars 2010
Messages : 120
Points : 31
Points : 31
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
pat17 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/01/2012, 10h01   #6
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Homme Jean BALLAT
Inscription : octobre 2004
Messages : 2 856
Détails du profil
Informations personnelles :
Nom : Homme Jean BALLAT
Âge : 63
Localisation : France, Loiret (Centre)

Informations forums :
Inscription : octobre 2004
Messages : 2 856
Points : 5 220
Points : 5 220
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
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/01/2012, 11h08   #7
Nouveau Membre du Club
 
patrick delavy
Inscription : mars 2010
Messages : 120
Détails du profil
Informations personnelles :
Nom : patrick delavy
Localisation : France

Informations forums :
Inscription : mars 2010
Messages : 120
Points : 31
Points : 31
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.
pat17 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/01/2012, 07h52   #8
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Homme Jean BALLAT
Inscription : octobre 2004
Messages : 2 856
Détails du profil
Informations personnelles :
Nom : Homme Jean BALLAT
Âge : 63
Localisation : France, Loiret (Centre)

Informations forums :
Inscription : octobre 2004
Messages : 2 856
Points : 5 220
Points : 5 220


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
Fichiers attachés
Type de fichier : rar OuvertureFormulaire.rar (30,9 Ko, 4 affichages)
__________________
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
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/01/2012, 09h43   #9
Nouveau Membre du Club
 
patrick delavy
Inscription : mars 2010
Messages : 120
Détails du profil
Informations personnelles :
Nom : patrick delavy
Localisation : France

Informations forums :
Inscription : mars 2010
Messages : 120
Points : 31
Points : 31
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
Fichiers attachés
Type de fichier : zip Copie de Habilitations.zip (102,5 Ko, 3 affichages)
pat17 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/01/2012, 09h58   #10
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Homme Jean BALLAT
Inscription : octobre 2004
Messages : 2 856
Détails du profil
Informations personnelles :
Nom : Homme Jean BALLAT
Âge : 63
Localisation : France, Loiret (Centre)

Informations forums :
Inscription : octobre 2004
Messages : 2 856
Points : 5 220
Points : 5 220


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 :
1
2
DoCmd.OpenForm "table Agents", acNormal, , "Nom2 = '" & Me.cboNom & "'"

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
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/01/2012, 10h47   #11
Nouveau Membre du Club
 
patrick delavy
Inscription : mars 2010
Messages : 120
Détails du profil
Informations personnelles :
Nom : patrick delavy
Localisation : France

Informations forums :
Inscription : mars 2010
Messages : 120
Points : 31
Points : 31
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 ???
pat17 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/02/2012, 08h56   #12
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Homme Jean BALLAT
Inscription : octobre 2004
Messages : 2 856
Détails du profil
Informations personnelles :
Nom : Homme Jean BALLAT
Âge : 63
Localisation : France, Loiret (Centre)

Informations forums :
Inscription : octobre 2004
Messages : 2 856
Points : 5 220
Points : 5 220


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
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/02/2012, 11h13   #13
Nouveau Membre du Club
 
patrick delavy
Inscription : mars 2010
Messages : 120
Détails du profil
Informations personnelles :
Nom : patrick delavy
Localisation : France

Informations forums :
Inscription : mars 2010
Messages : 120
Points : 31
Points : 31
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
pat17 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 16h50.


 
 
 
 
Partenaires

Hébergement Web