Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Recherche par sous-formulaire

8 réponses
Avatar
Dr Jekyll
Bonsoir à tous.

Je vais essayer d'être clair ce qui me semble assez difficile.

Un formulaire classique.
Un sous-formulaire lié en père-fils. Jusque là pas de problème.
Ce sous-formulaire peut avoir plusieurs lignes. Chaque ligne a un numéro
spécifique. En fait, chaque ligne représente une année. exemple

N°liaison(fils) année N° carte
1322 2007 345
1322 2008 720
1322 2009 935

Je peux effectuer une recherche par nom, formulaire principal, pas de
problème. Tout gâte lorsque je recherche par N° carte, rien à faire. Il ne
m'ouvre pas le formulaire principal. Je ne sais plus comment faire.

Merci par avance de votre aide.

Bonne soirée.

8 réponses

Avatar
3stone
Salut,

Dr Jekyll wrote:
Je vais essayer d'être clair ce qui me semble assez difficile.

Un formulaire classique.
Un sous-formulaire lié en père-fils. Jusque là pas de problème.
Ce sous-formulaire peut avoir plusieurs lignes. Chaque ligne a un
numéro spécifique. En fait, chaque ligne représente une année. exemple

N°liaison(fils) année N° carte
1322 2007 345
1322 2008 720
1322 2009 935

Je peux effectuer une recherche par nom, formulaire principal, pas de
problème. Tout gâte lorsque je recherche par N° carte, rien à faire.
Il ne m'ouvre pas le formulaire principal. Je ne sais plus comment
faire.




Ce qui est pas clair, c'est "comment" tu recherches...

Le numéro de carte, j'imagine qu'il est "unique", alors que
l'année est identique pour plusieurs "père", non ?

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
Avatar
Dr Jekyll
Salut pierre et merci de ton intérêt.
J'ai un formulaire avec deux possibilités de demande: soit par le nom ou
alors par le numéro de carte. J'y arrive très bien par exemple en cherchant
le nom. Je ne sais pas comment faire sur la recherche du "N°carte".
En fait je ne sais pas rechercher par le sous-formulaire.
merci
"3stone" a écrit dans le message de
news:
Salut,

Dr Jekyll wrote:
Je vais essayer d'être clair ce qui me semble assez difficile.

Un formulaire classique.
Un sous-formulaire lié en père-fils. Jusque là pas de problème.
Ce sous-formulaire peut avoir plusieurs lignes. Chaque ligne a un
numéro spécifique. En fait, chaque ligne représente une année. exemple

N°liaison(fils) année N° carte
1322 2007 345
1322 2008 720
1322 2009 935

Je peux effectuer une recherche par nom, formulaire principal, pas de
problème. Tout gâte lorsque je recherche par N° carte, rien à faire.
Il ne m'ouvre pas le formulaire principal. Je ne sais plus comment
faire.




Ce qui est pas clair, c'est "comment" tu recherches...

Le numéro de carte, j'imagine qu'il est "unique", alors que
l'année est identique pour plusieurs "père", non ?

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)



Avatar
Guy.G
Bonjour,
Perso, voici ma méthode:
la recherche et affichage se fait avec un liste modifiable, comme la
recherche par le nom, mais dont la liste est générée par une requêt e
qui montre le N° de carte.
Ainsi un sélectonnant un n° de carte on affiche le bon nom avec la
bonne carte dans le sous formulaire.
En espérant t'avoir aidé.
Cdlt.
Avatar
Dr Jekyll
je vais essayer de détailler mieux.

Un formulaire clasiqque avec nom, adresse etc...
Nom: Prénom: Adresse1 etc...

un sous-formulaire lié fils-père et qui contient:

N°liaison(fils) année N° carte
1322 2007 345
1322 2008 720
1322 2009 935

Ma recherche est possible soit sur le nom, pas de problème, ou n° de carte
qui m'affichera la fiche complète formulaire et son sous-formulaire.

Merci

"Guy.G" a écrit dans le message de
news:
Bonjour,
Perso, voici ma méthode:
la recherche et affichage se fait avec un liste modifiable, comme la
recherche par le nom, mais dont la liste est générée par une requête
qui montre le N° de carte.
Ainsi un sélectonnant un n° de carte on affiche le bon nom avec la
bonne carte dans le sous formulaire.
En espérant t'avoir aidé.
Cdlt.
Avatar
3stone
Salut,

Dr Jekyll wrote:
je vais essayer de détailler mieux.




Vrai que ce n'est pas clair ;-)

juste avant, tu disais:
"En fait je ne sais pas rechercher par le sous-formulaire."



Un formulaire clasiqque avec nom, adresse etc...
Nom: Prénom: Adresse1 etc...

un sous-formulaire lié fils-père et qui contient:

N°liaison(fils) année N° carte
1322 2007 345
1322 2008 720
1322 2009 935

Ma recherche est possible soit sur le nom, pas de problème, ou n° de
carte qui m'affichera la fiche complète formulaire et son
sous-formulaire.




et là cela semble fonctionner... ;-)

En fait, il me semble que tu cherches dans (la source) le formulaire
principal, et tu souhaites trouver *aussi* ce qui se trouve dans le
sous-formulaire, c'est cela ?

Je te propose de ne pas chercher dans le sous-formulaire, mais
dans sa source, la table, et d'y récupérer l'identifiant (clé externe
dans ce cas) qui te permet de sélectionner l'enregistrement du
formulaire principal.

Un DLookup("ID","LaTable", "[NoCarte]=" & NoCarte) te donnant cet "ID"

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
Avatar
Dr Jekyll
Merci Pierre.
Je pense envisager cette solution:
une requête du Numéro.
cle:dlookup("numero","requête")
et docmd.openform NumeroAdheren= Cle

Qu'en penses tu?
amitiés

jc
"3stone" a écrit dans le message de
news:
Salut,

Dr Jekyll wrote:
je vais essayer de détailler mieux.




Vrai que ce n'est pas clair ;-)

juste avant, tu disais:
"En fait je ne sais pas rechercher par le sous-formulaire."



Un formulaire clasiqque avec nom, adresse etc...
Nom: Prénom: Adresse1 etc...

un sous-formulaire lié fils-père et qui contient:

N°liaison(fils) année N° carte
1322 2007 345
1322 2008 720
1322 2009 935

Ma recherche est possible soit sur le nom, pas de problème, ou n° de
carte qui m'affichera la fiche complète formulaire et son
sous-formulaire.




et là cela semble fonctionner... ;-)

En fait, il me semble que tu cherches dans (la source) le formulaire
principal, et tu souhaites trouver *aussi* ce qui se trouve dans le
sous-formulaire, c'est cela ?

Je te propose de ne pas chercher dans le sous-formulaire, mais
dans sa source, la table, et d'y récupérer l'identifiant (clé externe
dans ce cas) qui te permet de sélectionner l'enregistrement du
formulaire principal.

Un DLookup("ID","LaTable", "[NoCarte]=" & NoCarte) te donnant cet "ID"

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)




Avatar
3stone
Salut,

Dr Jekyll wrote:
Je pense envisager cette solution:
une requête du Numéro.
cle:dlookup("numero","requête")
et docmd.openform NumeroAdheren= Cle

Qu'en penses tu?



Si cela répond à ce que tu cherches, pourquoi pas...

Si tu fais souvent des recherches sur certains champs,
pense à les indexer !

La saisie, l'édition et les recherches dépendent beaucoup de
l'organisation des formulaires... et eux, dépendent de la
quantité de données à traiter et de l'environnement.

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
Avatar
Dr Jekyll
Merci de ton ,accord. -:)
bon dimanche
"3stone" a écrit dans le message de
news:%
Salut,

Dr Jekyll wrote:
Je pense envisager cette solution:
une requête du Numéro.
cle:dlookup("numero","requête")
et docmd.openform NumeroAdheren= Cle

Qu'en penses tu?



Si cela répond à ce que tu cherches, pourquoi pas...

Si tu fais souvent des recherches sur certains champs,
pense à les indexer !

La saisie, l'édition et les recherches dépendent beaucoup de
l'organisation des formulaires... et eux, dépendent de la
quantité de données à traiter et de l'environnement.

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)