pb entre 2 formulaires

Le
P. BENNOIT
Bonjour,

Je pense avoir trouvé le bon forum. Voici mon problème que je vous
expose.

1 - Ce que je souhaite.
2 - Ce que j’ai réalisé.
3 - Ma question.

1 - Ce que je souhaite :
J’ai une base de données avec de très nombreux champs. En première
approche et à l’aide d’un formulaire type « feuille de données »
(issu d’une requête) je visualise 5 des principaux champs.
Dans ce tableau, et uniquement dans une colonne, je double clique
sur une données pour ouvrir un autre formulaire dans lequel je
souhaite consulter l’ensemble des enregistrements qui se rapportent
à la donnée sélectionnée.

2 - Ce que j’ai réalisé :
Les 2 formulaires (et la requête) sont créés. Dans le champ à
sélectionner j’indique dans les propriétés « sur double clic »
activation de la « macro1 ».
Lors de l’exécution de la tâche, le second formulaire s’ouvre bien
MAIS sur le premier enregistrement et pas sur celui correspondant à
la données sélectionnée.

3 – Question :
Comment écrire la macro pour récupérer l’enregistrement voulu ?

J’ai essayé d’écrire une procédure événementiel mais je n’y suis pas
arrivé (sous access 2000).

D'avance merci pour votre aide.
Pascal
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
3stone
Le #6391851
Salut,

"P. BENNOIT"
| Je pense avoir trouvé le bon forum. Voici mon problème que je vous
| expose.
|
| 1 - Ce que je souhaite.
| 2 - Ce que j’ai réalisé.
| 3 - Ma question.
|
| 1 - Ce que je souhaite :
| J’ai une base de données avec de très nombreux champs. En première
| approche et à l’aide d’un formulaire type « feuille de données »
| (issu d’une requête) je visualise 5 des principaux champs.
| Dans ce tableau, et uniquement dans une colonne, je double clique
| sur une données pour ouvrir un autre formulaire dans lequel je
| souhaite consulter l’ensemble des enregistrements qui se rapportent
| à la donnée sélectionnée.
|
| 2 - Ce que j’ai réalisé :
| Les 2 formulaires (et la requête) sont créés. Dans le champ à
| sélectionner j’indique dans les propriétés « sur double clic »
| activation de la « macro1 ».
| Lors de l’exécution de la tâche, le second formulaire s’ouvre bien
| MAIS sur le premier enregistrement et pas sur celui correspondant à
| la données sélectionnée.
|
| 3 – Question :
| Comment écrire la macro pour récupérer l’enregistrement voulu ?


Pas de macro ;-))


| J’ai essayé d’écrire une procédure événementiel mais je n’y suis pas
| arrivé (sous access 2000).


Le principe est simple...

docmd.OpenForm "MonForm",,,"LeChamp=" & MonChamp

La difficulté, c'est :
- Je clique dans quel champ ??
- Ce champ est-il numérique ou texte ?

Le plus simple étant alors pour toi d'écrire cette commande pour chaque
zone de texte que tu souhaite rendre "active" au double-clic

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
P. BENNOIT
Le #6391341
Salut,

"P. BENNOIT"
| Je pense avoir trouvé le bon forum. Voici mon problème que je vous
| expose.
|
| 1 - Ce que je souhaite.
| 2 - Ce que j’ai réalisé.
| 3 - Ma question.
|
| 1 - Ce que je souhaite :
| J’ai une base de données avec de très nombreux champs. En première
| approche et à l’aide d’un formulaire type « feuille de données »
| (issu d’une requête) je visualise 5 des principaux champs.
| Dans ce tableau, et uniquement dans une colonne, je double clique
| sur une données pour ouvrir un autre formulaire dans lequel je
| souhaite consulter l’ensemble des enregistrements qui se rapportent
| à la donnée sélectionnée.
|
| 2 - Ce que j’ai réalisé :
| Les 2 formulaires (et la requête) sont créés. Dans le champ à
| sélectionner j’indique dans les propriétés « sur double clic »
| activation de la « macro1 ».
| Lors de l’exécution de la tâche, le second formulaire s’ouvre bien
| MAIS sur le premier enregistrement et pas sur celui correspondant à
| la données sélectionnée.
|
| 3 – Question :
| Comment écrire la macro pour récupérer l’enregistrement voulu ?


Pas de macro ;-))


| J’ai essayé d’écrire une procédure événementiel mais je n’y suis pas
| arrivé (sous access 2000).


Le principe est simple...

docmd.OpenForm "MonForm",,,"LeChamp=" & MonChamp

La difficulté, c'est :
- Je clique dans quel champ ??
- Ce champ est-il numérique ou texte ?

Le plus simple étant alors pour toi d'écrire cette commande pour chaque
zone de texte que tu souhaite rendre "active" au double-clic

Bonjour,


Merci beaucoup. Ça m'a énormément aidé. En fait j'ai découvert après
plusieurs essais qu'il fallait que je rajoute des choses, de :

docmd.OpenForm "MonForm",,,"LeChamp=" & MonChamp

il fallait que je mettes :

docmd.OpenForm "MonForm",,,"LeChamp=" & "'" & [MonChamp] & "'"

Je pense que sans les ' il voit un champ numérique ; comme je suis
en "texte" il fallait le rajouter. J'ai mis pas mal de temps et lu
pas mal d'exemples avant de m'en rendre compte. Mais ça marche comme
je le voulais.
Encore merci.
Pascal

P. BENNOIT
Le #6391331
Salut,

"P. BENNOIT"
| Je pense avoir trouvé le bon forum. Voici mon problème que je vous
| expose.
|
| 1 - Ce que je souhaite.
| 2 - Ce que j’ai réalisé.
| 3 - Ma question.
|
| 1 - Ce que je souhaite :
| J’ai une base de données avec de très nombreux champs. En première
| approche et à l’aide d’un formulaire type « feuille de données »
| (issu d’une requête) je visualise 5 des principaux champs.
| Dans ce tableau, et uniquement dans une colonne, je double clique
| sur une données pour ouvrir un autre formulaire dans lequel je
| souhaite consulter l’ensemble des enregistrements qui se rapportent
| à la donnée sélectionnée.
|
| 2 - Ce que j’ai réalisé :
| Les 2 formulaires (et la requête) sont créés. Dans le champ à
| sélectionner j’indique dans les propriétés « sur double clic »
| activation de la « macro1 ».
| Lors de l’exécution de la tâche, le second formulaire s’ouvre bien
| MAIS sur le premier enregistrement et pas sur celui correspondant à
| la données sélectionnée.
|
| 3 – Question :
| Comment écrire la macro pour récupérer l’enregistrement voulu ?


Pas de macro ;-))


| J’ai essayé d’écrire une procédure événementiel mais je n’y suis pas
| arrivé (sous access 2000).


Le principe est simple...

docmd.OpenForm "MonForm",,,"LeChamp=" & MonChamp

La difficulté, c'est :
- Je clique dans quel champ ??
- Ce champ est-il numérique ou texte ?

Le plus simple étant alors pour toi d'écrire cette commande pour chaque
zone de texte que tu souhaite rendre "active" au double-clic

Bonjour,


Merci beaucoup. Ça m'a énormément aidé. En fait j'ai découvert après
plusieurs essais qu'il fallait que je rajoute des choses, de :

docmd.OpenForm "MonForm",,,"LeChamp=" & MonChamp

il fallait que je mettes :

docmd.OpenForm "MonForm",,,"LeChamp=" & "'" & [MonChamp] & "'"

Je pense que sans les ' il voit un champ numérique ; comme je suis
en "texte" il fallait le rajouter. J'ai mis pas mal de temps et lu
pas mal d'exemples avant de m'en rendre compte. Mais ça marche comme
je le voulais.
Encore merci.
Pascal

Publicité
Poster une réponse
Anonyme