OVH Cloud OVH Cloud

Ouverture d'un sous formulaire dans le cadre d'un formulaire

4 réponses
Avatar
DM
Bonjour la communauté

Je viens de chercher dans le forum et le grenier mais en vain

Sous Access2003, j'ai un form A contenant:
-un groupe de 2 options O1 et O2
-un cadre vide aux dimensions fixes

Sur le choix de l'option O1, je souhaites ouvrir le sous formulaire B dans
le cadre
Sur le choix de l'option O2, je souhaites fermer le sous formulaire B si
déjà ouvert, puis ouvrir le sous-formulaire C dans le même cadre

Comment faire? J'utilise la commande DoCmd.openform mais comment imposer
l'ouverture du sous-formulaire dans le cadre?

Merci

4 réponses

Avatar
3stone
Salut,

"DM"
| Sous Access2003, j'ai un form A contenant:
| -un groupe de 2 options O1 et O2
| -un cadre vide aux dimensions fixes
|
| Sur le choix de l'option O1, je souhaites ouvrir le sous formulaire B dans
| le cadre
| Sur le choix de l'option O2, je souhaites fermer le sous formulaire B si
| déjà ouvert, puis ouvrir le sous-formulaire C dans le même cadre


Qu'appelle tu un cadre ??

Tu dois placer un objet sous-formulaire qui contiendra le (sous)formulaire
Pour cela, il suffit de renseigner la source de cet objet sous-formulaire.

autre possibilité :
tu place les deux sous-form empiler l'un sur l'autre et du cache alternativement
celui qui ne doit pas être visible.


| Comment faire? J'utilise la commande DoCmd.openform mais comment imposer
| l'ouverture du sous-formulaire dans le cadre?

Normal, puisque OpenForm ouvre un formulaire...


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
DM
Merci pour ta réponse. Cependant:

Qu'appelle tu un cadre ??


Un sous-formulaire dont la propriétés SourceObject est paramétrable.

Tu dois placer un objet sous-formulaire qui contiendra le (sous)formulaire
Pour cela, il suffit de renseigner la source de cet objet sous-formulaire.


Tu peux ecrire le code? J'ai écris

Private Sub Cadre22_AfterUpdate() 'groupe d'options
Const Option25 = 1 'option1
Const Option27 = 2 'option2
If Me!Cadre22.Value = Option25 Then
Fille59.SourceObject = IngSaisieNouveauDoc
'Fille59 est le nom de l'objet sous formulaire paramétrable

End If
End Sub

Mais le sous formulaire IngSaisieNouveauDoc n'apparait pas.

Un coup de main ?
J'appelle "cadre"

Avatar
DM
Merci pour ta réponse. Cependant:
Ta seconde solution est ok mais dans mon cas j'aurais 4 formulaire à
empiler. Pour une meilleure lisibilité, j'opte pour ta première solution
Mais va falloir que tu me donnes un peu plus d'aide

Qu'appelle tu un cadre ??


Un sous-formulaire dont la propriétés SourceObject est paramétrable.

Tu dois placer un objet sous-formulaire qui contiendra le (sous)formulaire
Pour cela, il suffit de renseigner la source de cet objet sous-formulaire.


Tu peux ecrire le code? J'ai écris

Private Sub Cadre22_AfterUpdate() 'groupe d'options
Const Option25 = 1 'option1
Const Option27 = 2 'option2
If Me!Cadre22.Value = Option25 Then
Fille59.SourceObject = IngSaisieNouveauDoc
'Fille59 est le nom de l'objet sous formulaire paramétrable

End If
End Sub

Mais le sous formulaire IngSaisieNouveauDoc n'apparait pas.

Un coup de main ?
J'appelle "cadre"

Avatar
3stone
re,

"DM"
| Ta seconde solution est ok mais dans mon cas j'aurais 4 formulaire à
| empiler. Pour une meilleure lisibilité, j'opte pour ta première solution
| Mais va falloir que tu me donnes un peu plus d'aide
|


Me.NomDuControlSousForm.SourceObject = "NomDuSousForm".



--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/