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

A l'ouverture d'un formulaire avec sous-formulaire

7 réponses
Avatar
lululanantaise2
Bonjour =E0 toutes et =E0 tous,
J'ai un formulaire qui contient un sous-formulaire.
A l'ouverture du formulaire, je d=E9sirerais que le sous-formulaire se
"mette =E0 jour" (j'ai des =E9l=E9ments qui sont cach=E9s ou non en fonctio=
n
des donn=E9es).
J'ai tap=E9 dans le sous-formulaire :
Private Sub Form_Load()

If Suivi.Text =3D "TA" Or Suivi.Text =3D "OK" Then

PrimeHT.Visible =3D True
PrimeTTC.Visible =3D True
DateEnvoiProposition.Visible =3D True
=C9tiquette10.Visible =3D True
=C9tiquette12.Visible =3D True
=C9tiquette19.Visible =3D True

If Suivi.Text =3D "OK" Then
DateEffet.Visible =3D True
=C9tiquette11.Visible =3D True
CreeContrat.Visible =3D True
Else
DateEffet.Visible =3D False
=C9tiquette11.Visible =3D False
CreeContrat.Visible =3D False

End If

Else
=C9tiquette10.Visible =3D False
=C9tiquette11.Visible =3D False
=C9tiquette12.Visible =3D False
DateEnvoiProposition.Visible =3D False
CreeContrat.Visible =3D False
DateEffet.Visible =3D False
PrimeHT.Visible =3D False
PrimeTTC.Visible =3D False
=C9tiquette19.Visible =3D False

End If

End Sub

Mais j'ai le message d'erreur 2185 - "Impossible de faire r=E9f=E9rence =E0
une propri=E9t=E9 ou de la d=E9finir pour un contr=F4le si ce dernier n'est
pas activ=E9".
Merci de votre aide,
Lulu

7 réponses

Avatar
RideHickul
'lut,
Comme-ça, vu de loin, je dirais "normal" !
Lorsque l'évenement "Load" de ton sous-formulaire se produit, le champ
"Suivi" sur lequel tu fais ton test n'est pas encore alimenté par les
données de ta table (ou de ta requête).

Il me semblerait préférable de mettre ton code sur l'événement "apres MAJ"
du champ "Suivi"
Soit un truc du style :

Private Sub suivi_AfterUpdate()

If Suivi.Text = "TA" Or Suivi.Text = "OK" Then

PrimeHT.Visible = True
...

End Sub

A vérifier toutefois ...

RideHickul


"lululanantaise2" a écrit dans le message de news:

Bonjour à toutes et à tous,
J'ai un formulaire qui contient un sous-formulaire.
A l'ouverture du formulaire, je désirerais que le sous-formulaire se
"mette à jour" (j'ai des éléments qui sont cachés ou non en fonction
des données).
J'ai tapé dans le sous-formulaire :
Private Sub Form_Load()

If Suivi.Text = "TA" Or Suivi.Text = "OK" Then

PrimeHT.Visible = True
PrimeTTC.Visible = True
DateEnvoiProposition.Visible = True
Étiquette10.Visible = True
Étiquette12.Visible = True
Étiquette19.Visible = True

If Suivi.Text = "OK" Then
DateEffet.Visible = True
Étiquette11.Visible = True
CreeContrat.Visible = True
Else
DateEffet.Visible = False
Étiquette11.Visible = False
CreeContrat.Visible = False

End If

Else
Étiquette10.Visible = False
Étiquette11.Visible = False
Étiquette12.Visible = False
DateEnvoiProposition.Visible = False
CreeContrat.Visible = False
DateEffet.Visible = False
PrimeHT.Visible = False
PrimeTTC.Visible = False
Étiquette19.Visible = False

End If

End Sub

Mais j'ai le message d'erreur 2185 - "Impossible de faire référence à
une propriété ou de la définir pour un contrôle si ce dernier n'est
pas activé".
Merci de votre aide,
Lulu
Avatar
lululanantaise2
On 21 sep, 19:46, "RideHickul" wrote:
'lut,
Comme-ça, vu de loin, je dirais "normal" !
Lorsque l'évenement "Load" de ton sous-formulaire se produit, le champ
"Suivi" sur lequel tu fais ton test n'est pas encore alimenté par les
données de ta table (ou de ta requête).

Il me semblerait préférable de mettre ton code sur l'événement "a pres MAJ"
du champ "Suivi"
Soit un truc du style :

Private Sub suivi_AfterUpdate()

    If Suivi.Text = "TA" Or Suivi.Text = "OK" Then

        PrimeHT.Visible = True
        ...

End Sub

A vérifier toutefois ...

RideHickul

"lululanantaise2" a écrit dans le message de news:

Bonjour à toutes et à tous,
J'ai un formulaire qui contient un sous-formulaire.
A l'ouverture du formulaire, je désirerais que le sous-formulaire se
"mette à jour" (j'ai des éléments qui sont cachés ou non en fonct ion
des données).
J'ai tapé dans le sous-formulaire :
Private Sub Form_Load()

    If Suivi.Text = "TA" Or Suivi.Text = "OK" Then

        PrimeHT.Visible = True
        PrimeTTC.Visible = True
        DateEnvoiProposition.Visible = True
        Étiquette10.Visible = True
        Étiquette12.Visible = True
        Étiquette19.Visible = True

        If Suivi.Text = "OK" Then
            DateEffet.Visible = True
            Étiquette11.Visible = True
            CreeContrat.Visible = True
        Else
            DateEffet.Visible = False
            Étiquette11.Visible = False
            CreeContrat.Visible = False

        End If

    Else
        Étiquette10.Visible = False
        Étiquette11.Visible = False
        Étiquette12.Visible = False
        DateEnvoiProposition.Visible = False
        CreeContrat.Visible = False
        DateEffet.Visible = False
        PrimeHT.Visible = False
        PrimeTTC.Visible = False
        Étiquette19.Visible = False

    End If

End Sub

Mais j'ai le message d'erreur 2185 - "Impossible de faire référence à
une propriété ou de la définir pour un contrôle si ce dernier n'e st
pas activé".
Merci de votre aide,
Lulu



Ben c'est exactement ce que j'avais fait, mais si je ne touche pas à
SUIVI, mes données ne se mettent pas à jour...
Merci
Avatar
Faroukouvitch
On 25 sep, 07:35, lululanantaise2 wrote:
On 21 sep, 19:46, "RideHickul" wrote:



> 'lut,
> Comme-ça, vu de loin, je dirais "normal" !
> Lorsque l'évenement "Load" de ton sous-formulaire se produit, le cham p
> "Suivi" sur lequel tu fais ton test n'est pas encore alimenté par les
> données de ta table (ou de ta requête).

> Il me semblerait préférable de mettre ton code sur l'événement "apres MAJ"
> du champ "Suivi"
> Soit un truc du style :

> Private Sub suivi_AfterUpdate()

>     If Suivi.Text = "TA" Or Suivi.Text = "OK" Then

>         PrimeHT.Visible = True
>         ...

> End Sub

> A vérifier toutefois ...

> RideHickul

> "lululanantaise2" a écrit dans le message de new s:
>
> Bonjour à toutes et à tous,
> J'ai un formulaire qui contient un sous-formulaire.
> A l'ouverture du formulaire, je désirerais que le sous-formulaire se
> "mette à jour" (j'ai des éléments qui sont cachés ou non en fon ction
> des données).
> J'ai tapé dans le sous-formulaire :
> Private Sub Form_Load()

>     If Suivi.Text = "TA" Or Suivi.Text = "OK" Then

>         PrimeHT.Visible = True
>         PrimeTTC.Visible = True
>         DateEnvoiProposition.Visible = True
>         Étiquette10.Visible = True
>         Étiquette12.Visible = True
>         Étiquette19.Visible = True

>         If Suivi.Text = "OK" Then
>             DateEffet.Visible = True
>             Étiquette11.Visible = True
>             CreeContrat.Visible = True
>         Else
>             DateEffet.Visible = False
>             Étiquette11.Visible = False
>             CreeContrat.Visible = False

>         End If

>     Else
>         Étiquette10.Visible = False
>         Étiquette11.Visible = False
>         Étiquette12.Visible = False
>         DateEnvoiProposition.Visible = False
>         CreeContrat.Visible = False
>         DateEffet.Visible = False
>         PrimeHT.Visible = False
>         PrimeTTC.Visible = False
>         Étiquette19.Visible = False

>     End If

> End Sub

> Mais j'ai le message d'erreur 2185 - "Impossible de faire référence à
> une propriété ou de la définir pour un contrôle si ce dernier n 'est
> pas activé".
> Merci de votre aide,
> Lulu

Ben c'est exactement ce que j'avais fait, mais si je ne touche pas à
SUIVI, mes données ne se mettent pas à jour...
Merci



essayes de remettre ton code dans l'évènement Activate, je pense que
ça doit marcher.
Avatar
lululanantaise2
On 25 sep, 09:39, Faroukouvitch wrote:
On 25 sep, 07:35, lululanantaise2 wrote:





> On 21 sep, 19:46, "RideHickul" wrote:

> > 'lut,
> > Comme-ça, vu de loin, je dirais "normal" !
> > Lorsque l'évenement "Load" de ton sous-formulaire se produit, le ch amp
> > "Suivi" sur lequel tu fais ton test n'est pas encore alimenté par l es
> > données de ta table (ou de ta requête).

> > Il me semblerait préférable de mettre ton code sur l'événemen t "apres MAJ"
> > du champ "Suivi"
> > Soit un truc du style :

> > Private Sub suivi_AfterUpdate()

> >     If Suivi.Text = "TA" Or Suivi.Text = "OK" Then

> >         PrimeHT.Visible = True
> >         ...

> > End Sub

> > A vérifier toutefois ...

> > RideHickul

> > "lululanantaise2" a écrit dans le message de n ews:
> >
> > Bonjour à toutes et à tous,
> > J'ai un formulaire qui contient un sous-formulaire.
> > A l'ouverture du formulaire, je désirerais que le sous-formulaire s e
> > "mette à jour" (j'ai des éléments qui sont cachés ou non en f onction
> > des données).
> > J'ai tapé dans le sous-formulaire :
> > Private Sub Form_Load()

> >     If Suivi.Text = "TA" Or Suivi.Text = "OK" Then

> >         PrimeHT.Visible = True
> >         PrimeTTC.Visible = True
> >         DateEnvoiProposition.Visible = True
> >         Étiquette10.Visible = True
> >         Étiquette12.Visible = True
> >         Étiquette19.Visible = True

> >         If Suivi.Text = "OK" Then
> >             DateEffet.Visible = True
> >             Étiquette11.Visible = True
> >             CreeContrat.Visible = True
> >         Else
> >             DateEffet.Visible = False
> >             Étiquette11.Visible = False
> >             CreeContrat.Visible = False

> >         End If

> >     Else
> >         Étiquette10.Visible = False
> >         Étiquette11.Visible = False
> >         Étiquette12.Visible = False
> >         DateEnvoiProposition.Visible = False
> >         CreeContrat.Visible = False
> >         DateEffet.Visible = False
> >         PrimeHT.Visible = False
> >         PrimeTTC.Visible = False
> >         Étiquette19.Visible = False

> >     End If

> > End Sub

> > Mais j'ai le message d'erreur 2185 - "Impossible de faire référen ce à
> > une propriété ou de la définir pour un contrôle si ce dernier n'est
> > pas activé".
> > Merci de votre aide,
> > Lulu

> Ben c'est exactement ce que j'avais fait, mais si je ne touche pas à
> SUIVI, mes données ne se mettent pas à jour...
> Merci

essayes de remettre ton code dans l'évènement Activate, je pense que
ça doit marcher.



Ca
Avatar
lululanantaise2
On 25 sep, 09:39, Faroukouvitch wrote:
On 25 sep, 07:35, lululanantaise2 wrote:





> On 21 sep, 19:46, "RideHickul" wrote:

> > 'lut,
> > Comme-ça, vu de loin, je dirais "normal" !
> > Lorsque l'évenement "Load" de ton sous-formulaire se produit, le ch amp
> > "Suivi" sur lequel tu fais ton test n'est pas encore alimenté par l es
> > données de ta table (ou de ta requête).

> > Il me semblerait préférable de mettre ton code sur l'événemen t "apres MAJ"
> > du champ "Suivi"
> > Soit un truc du style :

> > Private Sub suivi_AfterUpdate()

> >     If Suivi.Text = "TA" Or Suivi.Text = "OK" Then

> >         PrimeHT.Visible = True
> >         ...

> > End Sub

> > A vérifier toutefois ...

> > RideHickul

> > "lululanantaise2" a écrit dans le message de n ews:
> >
> > Bonjour à toutes et à tous,
> > J'ai un formulaire qui contient un sous-formulaire.
> > A l'ouverture du formulaire, je désirerais que le sous-formulaire s e
> > "mette à jour" (j'ai des éléments qui sont cachés ou non en f onction
> > des données).
> > J'ai tapé dans le sous-formulaire :
> > Private Sub Form_Load()

> >     If Suivi.Text = "TA" Or Suivi.Text = "OK" Then

> >         PrimeHT.Visible = True
> >         PrimeTTC.Visible = True
> >         DateEnvoiProposition.Visible = True
> >         Étiquette10.Visible = True
> >         Étiquette12.Visible = True
> >         Étiquette19.Visible = True

> >         If Suivi.Text = "OK" Then
> >             DateEffet.Visible = True
> >             Étiquette11.Visible = True
> >             CreeContrat.Visible = True
> >         Else
> >             DateEffet.Visible = False
> >             Étiquette11.Visible = False
> >             CreeContrat.Visible = False

> >         End If

> >     Else
> >         Étiquette10.Visible = False
> >         Étiquette11.Visible = False
> >         Étiquette12.Visible = False
> >         DateEnvoiProposition.Visible = False
> >         CreeContrat.Visible = False
> >         DateEffet.Visible = False
> >         PrimeHT.Visible = False
> >         PrimeTTC.Visible = False
> >         Étiquette19.Visible = False

> >     End If

> > End Sub

> > Mais j'ai le message d'erreur 2185 - "Impossible de faire référen ce à
> > une propriété ou de la définir pour un contrôle si ce dernier n'est
> > pas activé".
> > Merci de votre aide,
> > Lulu

> Ben c'est exactement ce que j'avais fait, mais si je ne touche pas à
> SUIVI, mes données ne se mettent pas à jour...
> Merci

essayes de remettre ton code dans l'évènement Activate, je pense que
ça doit marcher.



Ca
Avatar
lululanantaise2
On 25 sep, 09:39, Faroukouvitch wrote:
On 25 sep, 07:35, lululanantaise2 wrote:





> On 21 sep, 19:46, "RideHickul" wrote:

> > 'lut,
> > Comme-ça, vu de loin, je dirais "normal" !
> > Lorsque l'évenement "Load" de ton sous-formulaire se produit, le ch amp
> > "Suivi" sur lequel tu fais ton test n'est pas encore alimenté par l es
> > données de ta table (ou de ta requête).

> > Il me semblerait préférable de mettre ton code sur l'événemen t "apres MAJ"
> > du champ "Suivi"
> > Soit un truc du style :

> > Private Sub suivi_AfterUpdate()

> >     If Suivi.Text = "TA" Or Suivi.Text = "OK" Then

> >         PrimeHT.Visible = True
> >         ...

> > End Sub

> > A vérifier toutefois ...

> > RideHickul

> > "lululanantaise2" a écrit dans le message de n ews:
> >
> > Bonjour à toutes et à tous,
> > J'ai un formulaire qui contient un sous-formulaire.
> > A l'ouverture du formulaire, je désirerais que le sous-formulaire s e
> > "mette à jour" (j'ai des éléments qui sont cachés ou non en f onction
> > des données).
> > J'ai tapé dans le sous-formulaire :
> > Private Sub Form_Load()

> >     If Suivi.Text = "TA" Or Suivi.Text = "OK" Then

> >         PrimeHT.Visible = True
> >         PrimeTTC.Visible = True
> >         DateEnvoiProposition.Visible = True
> >         Étiquette10.Visible = True
> >         Étiquette12.Visible = True
> >         Étiquette19.Visible = True

> >         If Suivi.Text = "OK" Then
> >             DateEffet.Visible = True
> >             Étiquette11.Visible = True
> >             CreeContrat.Visible = True
> >         Else
> >             DateEffet.Visible = False
> >             Étiquette11.Visible = False
> >             CreeContrat.Visible = False

> >         End If

> >     Else
> >         Étiquette10.Visible = False
> >         Étiquette11.Visible = False
> >         Étiquette12.Visible = False
> >         DateEnvoiProposition.Visible = False
> >         CreeContrat.Visible = False
> >         DateEffet.Visible = False
> >         PrimeHT.Visible = False
> >         PrimeTTC.Visible = False
> >         Étiquette19.Visible = False

> >     End If

> > End Sub

> > Mais j'ai le message d'erreur 2185 - "Impossible de faire référen ce à
> > une propriété ou de la définir pour un contrôle si ce dernier n'est
> > pas activé".
> > Merci de votre aide,
> > Lulu

> Ben c'est exactement ce que j'avais fait, mais si je ne touche pas à
> SUIVI, mes données ne se mettent pas à jour...
> Merci

essayes de remettre ton code dans l'évènement Activate, je pense que
ça doit marcher.



ca bug plus mais ca ne marche pas non plus !
Avatar
Faroukouvitch
Mets un msgbox("") à la première ligne pour vérifier si le code
s'execute ou non.