formulaire et mode feuille de données

Le
news.free.fr
Bonjour,

J'ai un formulaire qui contient un sous formulaire qui m'affiche en mode
feuille de données le résultat d'un filtrage.

Je souhaiterais, en double cliquant sur un enregistrement qui se trouve dans
la feuille de données, ouvrir un autre formulaire correspondant à cet
enregistrement.

Par ex : le filtrage affiche 2 contacts dans le sous formulaire feuille de
données :

ID Nom Prenom Ville
12 BOB jean Paris
214 Raoul maurice Angoulème


Je doublecliques sur BOB, ca m'ouvre la fiche contact correspondant à
Monsieur BOB



Est-ce faisable ?


Merci d'avance pour vos réponses

seb
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 #6383691
Salut,

"news.free.fr"
| J'ai un formulaire qui contient un sous formulaire qui m'affiche en mode
| feuille de données le résultat d'un filtrage.
|
| Je souhaiterais, en double cliquant sur un enregistrement qui se trouve dans
| la feuille de données, ouvrir un autre formulaire correspondant à cet
| enregistrement.
|
| Par ex : le filtrage affiche 2 contacts dans le sous formulaire feuille de
| données :
|
| ID Nom Prenom Ville
| 12 BOB jean Paris
| 214 Raoul maurice Angoulème
|
|
| Je doublecliques sur BOB, ca m'ouvre la fiche contact correspondant à
| Monsieur BOB...


Passe ton formulaire en mode formulaire continu (provisoirement)

Avec l'assistant, tu te crée un bouton dans la section détail.
L'action du bouton:
- ouvrir un formulaire (que tu désigneras)
- avec les "informations spécifiques à trouver"
- sélectionne le champ concerné dans chaque formulaire
- clique termine et retourne voir le code créé par l'assistant
- maintenant, il suffit de déplacer la partie intéressante du code
dans l'événement sur doubleclic de la zone de texte concernée.

Bien sur, tu supprimera le bouton et son code inutile avant
de basculer en mode feuille de données.

PS: Je n'utilise que rarement le mode feuille de données, je préfère
le form en mode continu auquel je donne l'aspect souhaité.

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
news.free.fr
Le #6383661
Merci Pierre,

Cela fonctionne à merveille. ;-)

Allez j'en profite :

J'ai récupéré votre code sur les filtres personnalisés
(http://www.3stone.be/access/articles.php?lng=fr&pgC ) .

est'il possible de rajouter une option "tous" dans les listes modifiables ?


"3stone"
Salut,

"news.free.fr"
| J'ai un formulaire qui contient un sous formulaire qui m'affiche en mode
| feuille de données le résultat d'un filtrage.
|
| Je souhaiterais, en double cliquant sur un enregistrement qui se trouve
dans
| la feuille de données, ouvrir un autre formulaire correspondant à cet
| enregistrement.
|
| Par ex : le filtrage affiche 2 contacts dans le sous formulaire feuille
de
| données :
|
| ID Nom Prenom Ville
| 12 BOB jean Paris
| 214 Raoul maurice Angoulème
|
|
| Je doublecliques sur BOB, ca m'ouvre la fiche contact correspondant à
| Monsieur BOB...


Passe ton formulaire en mode formulaire continu (provisoirement)

Avec l'assistant, tu te crée un bouton dans la section détail.
L'action du bouton:
- ouvrir un formulaire (que tu désigneras)
- avec les "informations spécifiques à trouver"
- sélectionne le champ concerné dans chaque formulaire
- clique termine et retourne voir le code créé par l'assistant
- maintenant, il suffit de déplacer la partie intéressante du code
dans l'événement sur doubleclic de la zone de texte concernée.

Bien sur, tu supprimera le bouton et son code inutile avant
de basculer en mode feuille de données.

PS: Je n'utilise que rarement le mode feuille de données, je préfère
le form en mode continu auquel je donne l'aspect souhaité.

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



3stone
Le #6383651
Salut,

"news.free.fr"
| Cela fonctionne à merveille. ;-)


et a l'avantage de comprendre le fonctionnement des assistants ;-)



| Allez j'en profite :
|
| J'ai récupéré votre code sur les filtres personnalisés
| (http://www.3stone.be/access/articles.php?lng=fr&pgC ) .
|
| est'il possible de rajouter une option "tous" dans les listes modifiables ?

Bien sûr, il suffit de compléter le code concaténé de cette façon :
http://homepage.bluewin.ch/wstucki//Formulaires.htm#Tous

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
news.free.fr
Le #6383561
J'ai adapté le code de ma liste par rapport à l'exemple :

mon code : SELECT Tb_contacts.Type, Tb_contacts.Id, 2 AS OrdreTri FROM
Tb_contacts UNION SELECT "<<TOUS>>" As Type, -1 As id, 1 As OrdreTri FROM
[Tb_contacts] ORDER BY OrdreTri, Type;

Je vois bien le <<TOUS>> en haut de ma liste (ca pête ;-)) sauf que lorsque
je le sélectionne, au lieu de m'afficher tous les enregistrements, il
m'affiche rien...

Bizarre...


"3stone"
Salut,

"news.free.fr"
| Cela fonctionne à merveille. ;-)


et a l'avantage de comprendre le fonctionnement des assistants ;-)



| Allez j'en profite :
|
| J'ai récupéré votre code sur les filtres personnalisés
| (http://www.3stone.be/access/articles.php?lng=fr&pgC ) .
|
| est'il possible de rajouter une option "tous" dans les listes
modifiables ?

Bien sûr, il suffit de compléter le code concaténé de cette façon :
http://homepage.bluewin.ch/wstucki//Formulaires.htm#Tous

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



3stone
Le #6383541
Salut,

"news.free.fr"
| J'ai adapté le code de ma liste par rapport à l'exemple :
|
| mon code : SELECT Tb_contacts.Type, Tb_contacts.Id, 2 AS OrdreTri FROM
| Tb_contacts UNION SELECT "<<TOUS>>" As Type, -1 As id, 1 As OrdreTri FROM
| [Tb_contacts] ORDER BY OrdreTri, Type;
|
| Je vois bien le <<TOUS>> en haut de ma liste (ca pête ;-)) sauf que lorsque
| je le sélectionne, au lieu de m'afficher tous les enregistrements, il
| m'affiche rien...

J'ai répondu de façon un peu simpliste, en disant de "concaténer"...

En fait, dans le code actuel, on vérifier s'il y à eu sélection d'une valeur
dans chaque liste (la zone de texte de la liste étant "vide")

- Soit, tu ajoutes un bouton pour "RESETer" les textbox des listes (les vider)
Me!LaListe = Null

- Soit tu ajoutes comme souhaité le mot "Tous" dans cette liste.

dans ce cas là, ce n'est plus le Null que tu dois tester, mais bien le "Tous"
et avec une obligation, c'est que la valeur "par défaut" de la liste ne
doit plus être le Null, mais bien la première valeur "Tous"

Cela s'obtient en mettant dans l'événement "Sur activation" du form :

Me.LaListe = Me.LaListe.ItemData(0)


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
news.free.fr
Le #6383431
Merci pierre,

J'ai retenu la solution du bouton reset, cela convient et ca fonctionne.

Aurriez-vous par hazard un bon tuto pour faire du publipostage et d'edition
d'étiquettes a partir d'access ?

seb


"3stone"
Salut,

"news.free.fr"
| J'ai adapté le code de ma liste par rapport à l'exemple :
|
| mon code : SELECT Tb_contacts.Type, Tb_contacts.Id, 2 AS OrdreTri FROM
| Tb_contacts UNION SELECT "<<TOUS>>" As Type, -1 As id, 1 As OrdreTri
FROM
| [Tb_contacts] ORDER BY OrdreTri, Type;
|
| Je vois bien le <<TOUS>> en haut de ma liste (ca pête ;-)) sauf que
lorsque
| je le sélectionne, au lieu de m'afficher tous les enregistrements, il
| m'affiche rien...

J'ai répondu de façon un peu simpliste, en disant de "concaténer"...

En fait, dans le code actuel, on vérifier s'il y à eu sélection d'une
valeur
dans chaque liste (la zone de texte de la liste étant "vide")

- Soit, tu ajoutes un bouton pour "RESETer" les textbox des listes (les
vider)
Me!LaListe = Null

- Soit tu ajoutes comme souhaité le mot "Tous" dans cette liste.

dans ce cas là, ce n'est plus le Null que tu dois tester, mais bien le
"Tous"
et avec une obligation, c'est que la valeur "par défaut" de la liste ne
doit plus être le Null, mais bien la première valeur "Tous"

Cela s'obtient en mettant dans l'événement "Sur activation" du form :

Me.LaListe = Me.LaListe.ItemData(0)


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




3stone
Le #6383411
Salut,

"news.free.fr"
| Aurriez-vous par hazard un bon tuto pour faire du publipostage et d'edition
| d'étiquettes a partir d'access ?

Utilise simplement l'assistant étiquette, ca roule tout seul ;-)

Etat, Nouveau, Assistant étiquette

Crée d'abord la requête qui va bien et renseigne cette requête comme source de ton état.

--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
MPFA: http://www.mpfa.info/ (infos générales)
news.free.fr
Le #6383131
Yes c'est fantastique, désormais je regarderais dans le assistant avant de
poser ce type de question ^^

par contre je ne comprends pas trop la syntaxe de docmd.openreport.

J'ai vu dans les propriétés de l'état que l'on pouvait également filtrer les
enregistrements (super c'est ce je veux...)

je stocke dans une variable publique strFiltreall les valeurs qui me servent
à filtrer un sous formulaire en mode feuille de donnée.

je souhaite réutiliser cette variable pour filtrer les étiquettes que je
veut imprimer.

je tape le code suivant mais j'ai une erreur de syntaxe ou de compilation (=
attendu), je ne sais pas comment passer strFiltreall comme filtre à l'état..

doCmd.OpenReport ("ET_etiquettes",acViewPreview,"strFiltreall")

l'aide d'access dit expression.OpenReport(ReportName, View, FilterName,
WhereCondition, WindowMode, OpenArgs)

Je pense etre bon mais ca ne veut pas ...

et puis un truc étrange que j'ai remarqué : mon état existe mais il
n'apparait pas dans la fenetre projet, je n'arrive pas à y faire référence
(report_ET_etiquettes).. Est-ce un bug ??

seb


"3stone" %
Salut,

"news.free.fr"
| Aurriez-vous par hazard un bon tuto pour faire du publipostage et
d'edition
| d'étiquettes a partir d'access ?

Utilise simplement l'assistant étiquette, ca roule tout seul ;-)

Etat, Nouveau, Assistant étiquette

Crée d'abord la requête qui va bien et renseigne cette requête comme
source de ton état.

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



Eric
Le #6383081
Bonjour,

Je pense que la syntaxe doit être :
DoCmd.OpenReport ""ET_etiquettes",acViewPreview,"NomFiltre"

où NomFiltre représente le nom d'une requête pré-enregistrée de la base
de données.

Si tu veux utiliser ta variable, il faut plutôt utiliser l'argument
WhereCondition dont le contenu est une clause SQL Where sans le mot Where

Yes c'est fantastique, désormais je regarderais dans le assistant avant de
poser ce type de question ^^

par contre je ne comprends pas trop la syntaxe de docmd.openreport.

J'ai vu dans les propriétés de l'état que l'on pouvait également filtrer les
enregistrements (super c'est ce je veux...)

je stocke dans une variable publique strFiltreall les valeurs qui me servent
à filtrer un sous formulaire en mode feuille de donnée.

je souhaite réutiliser cette variable pour filtrer les étiquettes que je
veut imprimer.

je tape le code suivant mais j'ai une erreur de syntaxe ou de compilation (=
attendu), je ne sais pas comment passer strFiltreall comme filtre à l'état..

doCmd.OpenReport ("ET_etiquettes",acViewPreview,"strFiltreall")

l'aide d'access dit expression.OpenReport(ReportName, View, FilterName,
WhereCondition, WindowMode, OpenArgs)

Je pense etre bon mais ca ne veut pas ...

et puis un truc étrange que j'ai remarqué : mon état existe mais il
n'apparait pas dans la fenetre projet, je n'arrive pas à y faire référence
(report_ET_etiquettes).. Est-ce un bug ??

seb


"3stone" %
Salut,

"news.free.fr"
| Aurriez-vous par hazard un bon tuto pour faire du publipostage et
d'edition
| d'étiquettes a partir d'access ?

Utilise simplement l'assistant étiquette, ca roule tout seul ;-)

Etat, Nouveau, Assistant étiquette

Crée d'abord la requête qui va bien et renseigne cette requête comme
source de ton état.

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






--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr


3stone
Le #6383061
Salut,

"news.free.fr"
| par contre je ne comprends pas trop la syntaxe de docmd.openreport.
|
| J'ai vu dans les propriétés de l'état que l'on pouvait également filtrer les
| enregistrements (super c'est ce je veux...)


Il est souvent plus performant d'utiliser la clause "Where" sur la source...
autrement dit, de filtrer au maximum au niveau de la requête source
et idéalement sur des champs indexés.


| je stocke dans une variable publique strFiltreall les valeurs qui me servent
| à filtrer un sous formulaire en mode feuille de donnée.
|
| je souhaite réutiliser cette variable pour filtrer les étiquettes que je
| veut imprimer.
|
| je tape le code suivant mais j'ai une erreur de syntaxe ou de compilation ( | attendu), je ne sais pas comment passer strFiltreall comme filtre à l'état..
|
| doCmd.OpenReport ("ET_etiquettes",acViewPreview,"strFiltreall")

supprime les guillemets autour de ta variable strFiltreall ;-)

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