OVH Cloud OVH Cloud

Lien formulaire / formulaire

3 réponses
Avatar
Christophe
Bonjour,

J'ai un formulaire [Projets] qui contien des onglets.
Sur une page d'un onglet j'ai ins=E9r=E9 un sous-formulaire=20
[sous_formulaire_sous_projet] qui contient la liste des=20
sous projets.
Dans la page de cet onglet, j'ai ajout=E9 un boouton qui me=20
permet quand je clic dessus d'avoir un formulaire=20
[Demandes] qui me donne le detail des demandes du sous-
projet sur lequel se trouve le curseur. Malheureusement je=20
n'arrive pas =E0 effectuer le lien. voici le code (ci-
dessous, je suis un d=E9butant en VBA) . Le champ (Projet)=20
est dans le formulaire [Demandes], le champ (NomProjet)=20
est dans le sous-formulaire [sous_formulaire_sous_projet]

Dim stNomDoc As String
Dim stCrit=E8reLiaison As String

stNomDoc =3D "Demandes"
stCrit=E8reLiaison =3D "[Projet] =3D Forms!Projets!
[sous_formulaire_sous_projet]![NomProjet]"
DoCmd.OpenForm stNomDoc, , , stCrit=E8reLiaison
=20
Forms!
Projets.SetFocus '=20
Repasse le focus au sous-formulaire
Forms!Projets!
[sous_formulaire_sous_projet].SetFocus ' du formulaire=20
Projets.

Quand je clic j'ai une fen=EAtre qui s'ouvre me demandant la=20
valeur de : Forms!Projets!sous_formulaire_sous_projet!
NomProjet. Si je renseigne j'ai une fen=EAtre qui m'indique=20
ne pas trouver le champ : sous_formulaire_sous_projet. Si=20
je clic une nouvelle fois, le formulaire [Demandes]=20
s'ouvre avec la bonne liaison.

Merci pour votre aide.

3 réponses

Avatar
Eric
Bonjour Christophe

Sur la procédure évènementielle de ton Bouton, mets le code suivant
Dim Lien as Integer ' je suppose que tu as un champ numérique qui
relie le sous-projet aux demandes
Lien = Me.[sous_formulaire_sous_projet]!NumSousprojet
DoCmd.Openform "Demandes",,,"[NumSousprojet]=" & Lien

si champ de liaison Texte
Lien = Me.[sous_formulaire_sous_projet]!NomSousprojet
DoCmd.Openform "Demandes",,,"[NomSousprojet]='" & Lien & "'"

A+
Eric

"Christophe" écrivait
news:199fb01c41c96$3dd30c10$:

Bonjour,

J'ai un formulaire [Projets] qui contien des onglets.
Sur une page d'un onglet j'ai inséré un sous-formulaire
[sous_formulaire_sous_projet] qui contient la liste des
sous projets.
Dans la page de cet onglet, j'ai ajouté un boouton qui me
permet quand je clic dessus d'avoir un formulaire
[Demandes] qui me donne le detail des demandes du sous-
projet sur lequel se trouve le curseur. Malheureusement je
n'arrive pas à effectuer le lien. voici le code (ci-
dessous, je suis un débutant en VBA) . Le champ (Projet)
est dans le formulaire [Demandes], le champ (NomProjet)
est dans le sous-formulaire [sous_formulaire_sous_projet]

Dim stNomDoc As String
Dim stCritèreLiaison As String

stNomDoc = "Demandes"
stCritèreLiaison = "[Projet] = Forms!Projets!
[sous_formulaire_sous_projet]![NomProjet]"
DoCmd.OpenForm stNomDoc, , , stCritèreLiaison

Forms!
Projets.SetFocus '
Repasse le focus au sous-formulaire
Forms!Projets!
[sous_formulaire_sous_projet].SetFocus ' du formulaire
Projets.

Quand je clic j'ai une fenêtre qui s'ouvre me demandant la
valeur de : Forms!Projets!sous_formulaire_sous_projet!
NomProjet. Si je renseigne j'ai une fenêtre qui m'indique
ne pas trouver le champ : sous_formulaire_sous_projet. Si
je clic une nouvelle fois, le formulaire [Demandes]
s'ouvre avec la bonne liaison.

Merci pour votre aide.



Avatar
Merci, mais malheureusement j'ai le message erreur :
impossible de trouver le
champ 'sous_formulaire_sous_projet' auquel il est fait
référence dans votre expression.

Est-ce qu-il ne faut pas coder l'onglet et la page dans
lequel se trouve le sous-formulaire ?
-----Message d'origine-----
Bonjour Christophe

Sur la procédure évènementielle de ton Bouton, mets le
code suivant

Dim Lien as Integer ' je suppose que tu as un
champ numérique qui

relie le sous-
projet aux demandes

Lien = Me.[sous_formulaire_sous_projet]!
NumSousprojet

DoCmd.Openform "Demandes",,,"[NumSousprojet]=" &
Lien


si champ de liaison Texte
Lien = Me.[sous_formulaire_sous_projet]!
NomSousprojet

DoCmd.Openform "Demandes",,,"[NomSousprojet]='" &
Lien & "'"


A+
Eric

"Christophe"
écrivait

news:199fb01c41c96$3dd30c10$:

Bonjour,

J'ai un formulaire [Projets] qui contien des onglets.
Sur une page d'un onglet j'ai inséré un sous-formulaire
[sous_formulaire_sous_projet] qui contient la liste des
sous projets.
Dans la page de cet onglet, j'ai ajouté un boouton qui
me


permet quand je clic dessus d'avoir un formulaire
[Demandes] qui me donne le detail des demandes du sous-
projet sur lequel se trouve le curseur. Malheureusement
je


n'arrive pas à effectuer le lien. voici le code (ci-
dessous, je suis un débutant en VBA) . Le champ
(Projet)


est dans le formulaire [Demandes], le champ (NomProjet)
est dans le sous-formulaire
[sous_formulaire_sous_projet]



Dim stNomDoc As String
Dim stCritèreLiaison As String

stNomDoc = "Demandes"
stCritèreLiaison = "[Projet] = Forms!Projets!
[sous_formulaire_sous_projet]![NomProjet]"
DoCmd.OpenForm stNomDoc, , , stCritèreLiaison

Forms!
Projets.SetFocus '
Repasse le focus au sous-formulaire
Forms!Projets!
[sous_formulaire_sous_projet].SetFocus ' du
formulaire


Projets.

Quand je clic j'ai une fenêtre qui s'ouvre me demandant
la


valeur de : Forms!Projets!sous_formulaire_sous_projet!
NomProjet. Si je renseigne j'ai une fenêtre qui
m'indique


ne pas trouver le champ : sous_formulaire_sous_projet.
Si


je clic une nouvelle fois, le formulaire [Demandes]
s'ouvre avec la bonne liaison.

Merci pour votre aide.



.




Avatar
Eric
re

Pas normal ca, tu dois avoir des problemes de nom de controle ou de
formulaire.
Quel est le champ de liaison entre le sous-formulaire mis dans l'onglet
et le formulaire que tu veux appeler avec ton bouton ?

A+
Eric

PS: si tu veux, dans une base neuve, tu me mets tes tables/requêtes et
tes formulaires nécessaires au traitement, tu zippes le tout et me
l'envoie pour que je regarde. Dans ce cas enleves les ZZ apres f_fram



écrivait
news:1a0d101c41d78$5d1d0340$:

Merci, mais malheureusement j'ai le message erreur :
impossible de trouver le
champ 'sous_formulaire_sous_projet' auquel il est fait
référence dans votre expression.

Est-ce qu-il ne faut pas coder l'onglet et la page dans
lequel se trouve le sous-formulaire ?
-----Message d'origine-----
Bonjour Christophe

Sur la procédure évènementielle de ton Bouton, mets le code suivant
Dim Lien as Integer ' je suppose que tu as un champ
numérique qui
relie le sous-
projet aux demandes Lien
= Me.[sous_formulaire_sous_projet]! NumSousprojet
DoCmd.Openform "Demandes",,,"[NumSousprojet]=" & Lien

si champ de liaison Texte
Lien = Me.[sous_formulaire_sous_projet]! NomSousprojet
DoCmd.Openform "Demandes",,,"[NomSousprojet]='" & Lien & "'"

A+
Eric

"Christophe" écrivait
news:199fb01c41c96$3dd30c10$:

Bonjour,

J'ai un formulaire [Projets] qui contien des onglets.
Sur une page d'un onglet j'ai inséré un sous-formulaire
[sous_formulaire_sous_projet] qui contient la liste des
sous projets.
Dans la page de cet onglet, j'ai ajouté un boouton qui me
permet quand je clic dessus d'avoir un formulaire
[Demandes] qui me donne le detail des demandes du sous- projet sur
lequel se trouve le curseur. Malheureusement je n'arrive pas à
effectuer le lien. voici le code (ci- dessous, je suis un débutant
en VBA) . Le champ (Projet) est dans le formulaire [Demandes], le
champ (NomProjet) est dans le sous-formulaire
[sous_formulaire_sous_projet]

Dim stNomDoc As String
Dim stCritèreLiaison As String

stNomDoc = "Demandes"
stCritèreLiaison = "[Projet] = Forms!Projets!
[sous_formulaire_sous_projet]![NomProjet]"
DoCmd.OpenForm stNomDoc, , , stCritèreLiaison

Forms!
Projets.SetFocus '
Repasse le focus au sous-formulaire
Forms!Projets!
[sous_formulaire_sous_projet].SetFocus ' du formulaire
Projets.

Quand je clic j'ai une fenêtre qui s'ouvre me demandant la
valeur de : Forms!Projets!sous_formulaire_sous_projet!
NomProjet. Si je renseigne j'ai une fenêtre qui m'indique ne pas
trouver le champ : sous_formulaire_sous_projet. Si je clic une
nouvelle fois, le formulaire [Demandes] s'ouvre avec la bonne
liaison.

Merci pour votre aide.



.