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

Masquer un onglet selon son contenu

9 réponses
Avatar
s.jean
Bonjour

Je souhaiterai masquer un onglet sous condition.
J'ai donc un formulaire frmDemandes avec 2 onglets A L'int=E9rieur de
l'onglet tabAncien j'ai un contr=F4le Commentaires (champs memo)
SI le champs Commentaires est vide je souhaiterai masquer l'onglet
tabAncien qui contient ce contr=F4le. L'interet est que le champs
Commentaires n'est plus utilis=E9 aujourd'hui mais doit rester visible
pour les anciens projets.

J'ai essay=E9 avec le code suivant mais en vain ...

Private Sub Form_Load()
If Me.Commentaires =3D Null Then
Me.tabAncien.Visible =3D False
Else
Me.tabAncien.Visible =3D True
End If

End Sub

Pouvez vous me donner un coup de main ?

2e question : lorsque cet onglet est invisible je souhaiterai rendre
invisible l'autre onglet et passer le contenu de celui-ci sur le
formulaire principal de fa=E7on a ne pas avoir 1 onglet. Une id=E9e ?
merci
Sandrine

9 réponses

Avatar
s.jean
Bonjour,

C'est bon ça marche finalement avec

Private Sub Form_Load()
If Me.Commentaires <> "0" Then
Me.tabAncien.Visible = True
Else
Me.tabAncien.Visible = False
End If


End Sub


Sandrine

On 18 juin, 10:22, "s.jean" wrote:
Bonjour

Je souhaiterai masquer un onglet sous condition.
J'ai donc un formulaire frmDemandes avec 2 onglets A L'intérieur de
l'onglet tabAncien j'ai un contrôle Commentaires (champs memo)
SI le champs Commentaires est vide je souhaiterai masquer l'onglet
tabAncien qui contient ce contrôle. L'interet est que le champs
Commentaires n'est plus utilisé aujourd'hui mais doit rester visible
pour les anciens projets.

J'ai essayé avec le code suivant mais en vain ...

Private Sub Form_Load()
If Me.Commentaires = Null Then
Me.tabAncien.Visible = False
Else
Me.tabAncien.Visible = True
End If

End Sub

Pouvez vous me donner un coup de main ?

2e question : lorsque cet onglet est invisible je souhaiterai rendre
invisible l'autre onglet et passer le contenu de celui-ci sur le
formulaire principal de façon a ne pas avoir 1 onglet. Une idée ?
merci
Sandrine


Avatar
Fabien
s.jean a écrit :
Bonjour,

C'est bon ça marche finalement avec

Private Sub Form_Load()
If Me.Commentaires <> "0" Then
Me.tabAncien.Visible = True
Else
Me.tabAncien.Visible = False
End If


End Sub


Sandrine

On 18 juin, 10:22, "s.jean" wrote:
Bonjour

Je souhaiterai masquer un onglet sous condition.
J'ai donc un formulaire frmDemandes avec 2 onglets A L'intérieur de
l'onglet tabAncien j'ai un contrôle Commentaires (champs memo)
SI le champs Commentaires est vide je souhaiterai masquer l'onglet
tabAncien qui contient ce contrôle. L'interet est que le champs
Commentaires n'est plus utilisé aujourd'hui mais doit rester visible
pour les anciens projets.

J'ai essayé avec le code suivant mais en vain ...

Private Sub Form_Load()
If Me.Commentaires = Null Then
Me.tabAncien.Visible = False
Else
Me.tabAncien.Visible = True
End If

End Sub

Pouvez vous me donner un coup de main ?

2e question : lorsque cet onglet est invisible je souhaiterai rendre
invisible l'autre onglet et passer le contenu de celui-ci sur le
formulaire principal de façon a ne pas avoir 1 onglet. Une idée ?
merci
Sandrine





Que tu peux optimiser en
Private Sub Form_Load()

Me.tabAncien.Visible = not(Me.Commentaires = Null)


End Sub
;-)
Avatar
s.jean
Bonjour,

alors il me mets "utilisation incorrecte de Null" avec
Private Sub Form_Load()
Me.tabAncien.Visible = Not (Me.Commentaires = Null)
End Sub

Par ailleurs la seule solution que j'ai trouvée pour masquer les
onglets lorsque j'en ai qu'un seul est de jouer sur le style, mais il
me reste la bordure. Y aurait - il un autre moyen ? Par ailleurs
j'avais intégré ce code dans mon code, du coup je ne sais plus quoi en
faire !

Merci !
Sandrine

On 18 juin, 11:59, Fabien wrote:
s.jean a écrit :



> Bonjour,

> C'est bon ça marche finalement avec

> Private Sub Form_Load()
> If Me.Commentaires <> "0" Then
> Me.tabAncien.Visible = True
> Else
> Me.tabAncien.Visible = False
> End If

> End Sub

> Sandrine

> On 18 juin, 10:22, "s.jean" wrote:
>> Bonjour

>> Je souhaiterai masquer un onglet sous condition.
>> J'ai donc un formulaire frmDemandes avec 2 onglets A L'intérieur de
>> l'onglet tabAncien j'ai un contrôle Commentaires (champs memo)
>> SI le champs Commentaires est vide je souhaiterai masquer l'onglet
>> tabAncien qui contient ce contrôle. L'interet est que le champs
>> Commentaires n'est plus utilisé aujourd'hui mais doit rester visible
>> pour les anciens projets.

>> J'ai essayé avec le code suivant mais en vain ...

>> Private Sub Form_Load()
>> If Me.Commentaires = Null Then
>> Me.tabAncien.Visible = False
>> Else
>> Me.tabAncien.Visible = True
>> End If

>> End Sub

>> Pouvez vous me donner un coup de main ?

>> 2e question : lorsque cet onglet est invisible je souhaiterai rendre
>> invisible l'autre onglet et passer le contenu de celui-ci sur le
>> formulaire principal de façon a ne pas avoir 1 onglet. Une idée ?
>> merci
>> Sandrine

Que tu peux optimiser en
Private Sub Form_Load()

  Me.tabAncien.Visible = not(Me.Commentaires = Null)

  End Sub
;-)- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -


Avatar
Fabien
s.jean a écrit :
Bonjour,

alors il me mets "utilisation incorrecte de Null" avec
Private Sub Form_Load()
Me.tabAncien.Visible = Not (Me.Commentaires = Null)
End Sub

Par ailleurs la seule solution que j'ai trouvée pour masquer les
onglets lorsque j'en ai qu'un seul est de jouer sur le style, mais il
me reste la bordure. Y aurait - il un autre moyen ? Par ailleurs
j'avais intégré ce code dans mon code, du coup je ne sais plus quoi en
faire !

Merci !
Sandrine

On 18 juin, 11:59, Fabien wrote:
s.jean a écrit :



Bonjour,
C'est bon ça marche finalement avec
Private Sub Form_Load()
If Me.Commentaires <> "0" Then
Me.tabAncien.Visible = True
Else
Me.tabAncien.Visible = False
End If
End Sub
Sandrine
On 18 juin, 10:22, "s.jean" wrote:
Bonjour
Je souhaiterai masquer un onglet sous condition.
J'ai donc un formulaire frmDemandes avec 2 onglets A L'intérieur de
l'onglet tabAncien j'ai un contrôle Commentaires (champs memo)
SI le champs Commentaires est vide je souhaiterai masquer l'onglet
tabAncien qui contient ce contrôle. L'interet est que le champs
Commentaires n'est plus utilisé aujourd'hui mais doit rester visible
pour les anciens projets.
J'ai essayé avec le code suivant mais en vain ...
Private Sub Form_Load()
If Me.Commentaires = Null Then
Me.tabAncien.Visible = False
Else
Me.tabAncien.Visible = True
End If
End Sub
Pouvez vous me donner un coup de main ?
2e question : lorsque cet onglet est invisible je souhaiterai rendre
invisible l'autre onglet et passer le contenu de celui-ci sur le
formulaire principal de façon a ne pas avoir 1 onglet. Une idée ?
merci
Sandrine




Que tu peux optimiser en
Private Sub Form_Load()

Me.tabAncien.Visible = not(Me.Commentaires = Null)

End Sub
;-)- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -






Et avec :
Me.tabAncien.Visible = nz(Me.Commentaires,"")=""
Avatar
s.jean
Re-Bonjour,

je rappelle mon code précédent :

Private Sub Active_Controle()
Dim oCtrl As Control
For Each oCtrl In Me.Controls
If (oCtrl.Name <> "Cocher35") And (oCtrl.ControlType <>
acLabel) And (oCtrl.ControlType <> acTabCtl) Then
oCtrl.Enabled = Not (Cocher35 = -1)
End If
Next
End Sub

Parmis les contrôles désactivés il y a le contrôle Commentaires, qu i,
je pense a du mal à se désactiver si il n'est pas visible ...

Comment faire ? Peut-on lier les 2 codes ? Je souhaite en fait qu'il
n'y ait pas d'onglet si le contenu de Commentaires est vide, mais je
souhaite garder le sous-formulaire qui est sur l'autre onglet, et
qu'il soit sur le formulaire principal (Je suis claire ?)

Merci
Sandrine


On 18 juin, 13:37, Fabien wrote:
s.jean a écrit :





> Bonjour,

> alors il me mets "utilisation incorrecte de Null" avec
> Private Sub Form_Load()
> Me.tabAncien.Visible = Not (Me.Commentaires = Null)
> End Sub

> Par ailleurs la seule solution que j'ai trouvée pour masquer les
> onglets lorsque j'en ai qu'un seul est de jouer sur le style, mais il
> me reste la bordure. Y aurait - il un autre moyen ? Par ailleurs
> j'avais intégré ce code dans mon code, du coup je ne sais plus quoi en
> faire !

> Merci !
> Sandrine

> On 18 juin, 11:59, Fabien wrote:
>> s.jean a écrit :

>>> Bonjour,
>>> C'est bon ça marche finalement avec
>>> Private Sub Form_Load()
>>> If Me.Commentaires <> "0" Then
>>> Me.tabAncien.Visible = True
>>> Else
>>> Me.tabAncien.Visible = False
>>> End If
>>> End Sub
>>> Sandrine
>>> On 18 juin, 10:22, "s.jean" wrote:
>>>> Bonjour
>>>> Je souhaiterai masquer un onglet sous condition.
>>>> J'ai donc un formulaire frmDemandes avec 2 onglets A L'intérieur d e
>>>> l'onglet tabAncien j'ai un contrôle Commentaires (champs memo)
>>>> SI le champs Commentaires est vide je souhaiterai masquer l'onglet
>>>> tabAncien qui contient ce contrôle. L'interet est que le champs
>>>> Commentaires n'est plus utilisé aujourd'hui mais doit rester visib le
>>>> pour les anciens projets.
>>>> J'ai essayé avec le code suivant mais en vain ...
>>>> Private Sub Form_Load()
>>>> If Me.Commentaires = Null Then
>>>> Me.tabAncien.Visible = False
>>>> Else
>>>> Me.tabAncien.Visible = True
>>>> End If
>>>> End Sub
>>>> Pouvez vous me donner un coup de main ?
>>>> 2e question : lorsque cet onglet est invisible je souhaiterai rendre
>>>> invisible l'autre onglet et passer le contenu de celui-ci sur le
>>>> formulaire principal de façon a ne pas avoir 1 onglet. Une idée ?
>>>> merci
>>>> Sandrine
>> Que tu peux optimiser en
>> Private Sub Form_Load()

>>   Me.tabAncien.Visible = not(Me.Commentaires = Null)

>>   End Sub
>> ;-)- Masquer le texte des messages précédents -

>> - Afficher le texte des messages précédents -

Et avec :
Me.tabAncien.Visible = nz(Me.Commentaires,"")=""- Masquer le texte de s messages précédents -

- Afficher le texte des messages précédents -


Avatar
Fabien
s.jean a écrit :
Re-Bonjour,

je rappelle mon code précédent :

Private Sub Active_Controle()
Dim oCtrl As Control
For Each oCtrl In Me.Controls
If (oCtrl.Name <> "Cocher35") And (oCtrl.ControlType <>
acLabel) And (oCtrl.ControlType <> acTabCtl) Then
oCtrl.Enabled = Not (Cocher35 = -1)
End If
Next
End Sub

Parmis les contrôles désactivés il y a le contrôle Commentaires, qui,
je pense a du mal à se désactiver si il n'est pas visible ...

Comment faire ? Peut-on lier les 2 codes ? Je souhaite en fait qu'il
n'y ait pas d'onglet si le contenu de Commentaires est vide, mais je
souhaite garder le sous-formulaire qui est sur l'autre onglet, et
qu'il soit sur le formulaire principal (Je suis claire ?)

Merci
Sandrine


On 18 juin, 13:37, Fabien wrote:
s.jean a écrit :





Bonjour,
alors il me mets "utilisation incorrecte de Null" avec
Private Sub Form_Load()
Me.tabAncien.Visible = Not (Me.Commentaires = Null)
End Sub
Par ailleurs la seule solution que j'ai trouvée pour masquer les
onglets lorsque j'en ai qu'un seul est de jouer sur le style, mais il
me reste la bordure. Y aurait - il un autre moyen ? Par ailleurs
j'avais intégré ce code dans mon code, du coup je ne sais plus quoi en
faire !
Merci !
Sandrine
On 18 juin, 11:59, Fabien wrote:
s.jean a écrit :
Bonjour,
C'est bon ça marche finalement avec
Private Sub Form_Load()
If Me.Commentaires <> "0" Then
Me.tabAncien.Visible = True
Else
Me.tabAncien.Visible = False
End If
End Sub
Sandrine
On 18 juin, 10:22, "s.jean" wrote:
Bonjour
Je souhaiterai masquer un onglet sous condition.
J'ai donc un formulaire frmDemandes avec 2 onglets A L'intérieur de
l'onglet tabAncien j'ai un contrôle Commentaires (champs memo)
SI le champs Commentaires est vide je souhaiterai masquer l'onglet
tabAncien qui contient ce contrôle. L'interet est que le champs
Commentaires n'est plus utilisé aujourd'hui mais doit rester visible
pour les anciens projets.
J'ai essayé avec le code suivant mais en vain ...
Private Sub Form_Load()
If Me.Commentaires = Null Then
Me.tabAncien.Visible = False
Else
Me.tabAncien.Visible = True
End If
End Sub
Pouvez vous me donner un coup de main ?
2e question : lorsque cet onglet est invisible je souhaiterai rendre
invisible l'autre onglet et passer le contenu de celui-ci sur le
formulaire principal de façon a ne pas avoir 1 onglet. Une idée ?
merci
Sandrine




Que tu peux optimiser en
Private Sub Form_Load()
Me.tabAncien.Visible = not(Me.Commentaires = Null)
End Sub
;-)- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -




Et avec :
Me.tabAncien.Visible = nz(Me.Commentaires,"")=""- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -






Tu laisse le controle onglet actif et tu rend invisible la page qui
porte le commentaire
me.page_de_l'onglet_commentaire.visible=nz(me.commentaire,"")<>""
et si la case cocher35 est cochée tu refais apparaitre la page de l'onglet.
Avatar
s.jean
super, c'est bon !

Maintenant je me retrouve donc quand mon champs Commentaires est vide,
avec un seul onglet qui contient un sous-formulaire, puis je faire en
sorte que mon sous-formulaire apparaisse sur le formulaire principal,
et qu'il n'y a pas d'onglet ?

Merci
Sandrine



On 18 juin, 15:11, Fabien wrote:
s.jean a écrit :





> Re-Bonjour,

> je rappelle mon code précédent :

> Private Sub Active_Controle()
> Dim oCtrl As Control
>    For Each oCtrl In Me.Controls
>         If (oCtrl.Name <> "Cocher35") And (oCtrl.ControlType <>
> acLabel) And (oCtrl.ControlType <> acTabCtl) Then
>           oCtrl.Enabled = Not (Cocher35 = -1)
>     End If
>    Next
> End Sub

> Parmis les contrôles désactivés il y a le contrôle Commentaires , qui,
> je pense a du mal à se désactiver si il n'est pas visible ...

> Comment faire ? Peut-on lier les 2 codes ? Je souhaite en fait qu'il
> n'y ait pas d'onglet si le contenu de Commentaires est vide, mais je
> souhaite garder le sous-formulaire qui est sur l'autre onglet, et
> qu'il soit sur le formulaire principal (Je suis claire ?)

> Merci
> Sandrine

> On 18 juin, 13:37, Fabien wrote:
>> s.jean a écrit :

>>> Bonjour,
>>> alors il me mets "utilisation incorrecte de Null" avec
>>> Private Sub Form_Load()
>>> Me.tabAncien.Visible = Not (Me.Commentaires = Null)
>>> End Sub
>>> Par ailleurs la seule solution que j'ai trouvée pour masquer les
>>> onglets lorsque j'en ai qu'un seul est de jouer sur le style, mais il
>>> me reste la bordure. Y aurait - il un autre moyen ? Par ailleurs
>>> j'avais intégré ce code dans mon code, du coup je ne sais plus qu oi en
>>> faire !
>>> Merci !
>>> Sandrine
>>> On 18 juin, 11:59, Fabien wrote:
>>>> s.jean a écrit :
>>>>> Bonjour,
>>>>> C'est bon ça marche finalement avec
>>>>> Private Sub Form_Load()
>>>>> If Me.Commentaires <> "0" Then
>>>>> Me.tabAncien.Visible = True
>>>>> Else
>>>>> Me.tabAncien.Visible = False
>>>>> End If
>>>>> End Sub
>>>>> Sandrine
>>>>> On 18 juin, 10:22, "s.jean" wrote:
>>>>>> Bonjour
>>>>>> Je souhaiterai masquer un onglet sous condition.
>>>>>> J'ai donc un formulaire frmDemandes avec 2 onglets A L'intérieur de
>>>>>> l'onglet tabAncien j'ai un contrôle Commentaires (champs memo)
>>>>>> SI le champs Commentaires est vide je souhaiterai masquer l'onglet
>>>>>> tabAncien qui contient ce contrôle. L'interet est que le champs
>>>>>> Commentaires n'est plus utilisé aujourd'hui mais doit rester vis ible
>>>>>> pour les anciens projets.
>>>>>> J'ai essayé avec le code suivant mais en vain ...
>>>>>> Private Sub Form_Load()
>>>>>> If Me.Commentaires = Null Then
>>>>>> Me.tabAncien.Visible = False
>>>>>> Else
>>>>>> Me.tabAncien.Visible = True
>>>>>> End If
>>>>>> End Sub
>>>>>> Pouvez vous me donner un coup de main ?
>>>>>> 2e question : lorsque cet onglet est invisible je souhaiterai rend re
>>>>>> invisible l'autre onglet et passer le contenu de celui-ci sur le
>>>>>> formulaire principal de façon a ne pas avoir 1 onglet. Une idé e ?
>>>>>> merci
>>>>>> Sandrine
>>>> Que tu peux optimiser en
>>>> Private Sub Form_Load()
>>>>   Me.tabAncien.Visible = not(Me.Commentaires = Null)
>>>>   End Sub
>>>> ;-)- Masquer le texte des messages précédents -
>>>> - Afficher le texte des messages précédents -
>> Et avec :
>> Me.tabAncien.Visible = nz(Me.Commentaires,"")=""- Masquer le texte des messages précédents -

>> - Afficher le texte des messages précédents -

Tu laisse le controle onglet actif et tu rend invisible la page qui
porte le commentaire
me.page_de_l'onglet_commentaire.visible=nz(me.commentaire,"")<>""
et si la case cocher35 est cochée tu refais apparaitre la page de l'ong let.- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -


Avatar
Fabien
s.jean a écrit :
super, c'est bon !

Maintenant je me retrouve donc quand mon champs Commentaires est vide,
avec un seul onglet qui contient un sous-formulaire, puis je faire en
sorte que mon sous-formulaire apparaisse sur le formulaire principal,
et qu'il n'y a pas d'onglet ?

Merci
Sandrine



On 18 juin, 15:11, Fabien wrote:
s.jean a écrit :





Re-Bonjour,
je rappelle mon code précédent :
Private Sub Active_Controle()
Dim oCtrl As Control
For Each oCtrl In Me.Controls
If (oCtrl.Name <> "Cocher35") And (oCtrl.ControlType <>
acLabel) And (oCtrl.ControlType <> acTabCtl) Then
oCtrl.Enabled = Not (Cocher35 = -1)
End If
Next
End Sub
Parmis les contrôles désactivés il y a le contrôle Commentaires, qui,
je pense a du mal à se désactiver si il n'est pas visible ...
Comment faire ? Peut-on lier les 2 codes ? Je souhaite en fait qu'il
n'y ait pas d'onglet si le contenu de Commentaires est vide, mais je
souhaite garder le sous-formulaire qui est sur l'autre onglet, et
qu'il soit sur le formulaire principal (Je suis claire ?)
Merci
Sandrine
On 18 juin, 13:37, Fabien wrote:
s.jean a écrit :
Bonjour,
alors il me mets "utilisation incorrecte de Null" avec
Private Sub Form_Load()
Me.tabAncien.Visible = Not (Me.Commentaires = Null)
End Sub
Par ailleurs la seule solution que j'ai trouvée pour masquer les
onglets lorsque j'en ai qu'un seul est de jouer sur le style, mais il
me reste la bordure. Y aurait - il un autre moyen ? Par ailleurs
j'avais intégré ce code dans mon code, du coup je ne sais plus quoi en
faire !
Merci !
Sandrine
On 18 juin, 11:59, Fabien wrote:
s.jean a écrit :
Bonjour,
C'est bon ça marche finalement avec
Private Sub Form_Load()
If Me.Commentaires <> "0" Then
Me.tabAncien.Visible = True
Else
Me.tabAncien.Visible = False
End If
End Sub
Sandrine
On 18 juin, 10:22, "s.jean" wrote:
Bonjour
Je souhaiterai masquer un onglet sous condition.
J'ai donc un formulaire frmDemandes avec 2 onglets A L'intérieur de
l'onglet tabAncien j'ai un contrôle Commentaires (champs memo)
SI le champs Commentaires est vide je souhaiterai masquer l'onglet
tabAncien qui contient ce contrôle. L'interet est que le champs
Commentaires n'est plus utilisé aujourd'hui mais doit rester visible
pour les anciens projets.
J'ai essayé avec le code suivant mais en vain ...
Private Sub Form_Load()
If Me.Commentaires = Null Then
Me.tabAncien.Visible = False
Else
Me.tabAncien.Visible = True
End If
End Sub
Pouvez vous me donner un coup de main ?
2e question : lorsque cet onglet est invisible je souhaiterai rendre
invisible l'autre onglet et passer le contenu de celui-ci sur le
formulaire principal de façon a ne pas avoir 1 onglet. Une idée ?
merci
Sandrine




Que tu peux optimiser en
Private Sub Form_Load()
Me.tabAncien.Visible = not(Me.Commentaires = Null)
End Sub
;-)- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -




Et avec :
Me.tabAncien.Visible = nz(Me.Commentaires,"")=""- Masquer le texte des messages précédents -
- Afficher le texte des messages précédents -




Tu laisse le controle onglet actif et tu rend invisible la page qui
porte le commentaire
me.page_de_l'onglet_commentaire.visible=nz(me.commentaire,"")<>""
et si la case cocher35 est cochée tu refais apparaitre la page de l'onglet.- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -





Ben l'astuce serait de mettre ton sous formulaire directement dans ton
formulaire et de le cacher par defaut. De mettre par dessus ton onglet
actuel .
Tu caches ton onglet et tu 'dé-cache' ton sous-formulaire en cas de besoin.
Avatar
s.jean
C'est bon ! J'y avais déjà pensé mais je me demandais si il y avait u n
autre moyen que de mettre 2 fois le même sous-formulaire.

Merci !
Sandrine


On 18 juin, 15:57, Fabien wrote:
s.jean a écrit :



> super, c'est bon !

> Maintenant je me retrouve donc quand mon champs Commentaires est vide,
> avec un seul onglet qui contient un sous-formulaire, puis je faire en
> sorte que mon sous-formulaire apparaisse sur le formulaire principal,
> et qu'il n'y a pas d'onglet ?

> Merci
> Sandrine

> On 18 juin, 15:11, Fabien wrote:
>> s.jean a écrit :

>>> Re-Bonjour,
>>> je rappelle mon code précédent :
>>> Private Sub Active_Controle()
>>> Dim oCtrl As Control
>>>    For Each oCtrl In Me.Controls
>>>         If (oCtrl.Name <> "Cocher35") And (oCtrl.ControlType <>
>>> acLabel) And (oCtrl.ControlType <> acTabCtl) Then
>>>           oCtrl.Enabled = Not (Cocher35 = -1)
>>>     End If
>>>    Next
>>> End Sub
>>> Parmis les contrôles désactivés il y a le contrôle Commentair es, qui,
>>> je pense a du mal à se désactiver si il n'est pas visible ...
>>> Comment faire ? Peut-on lier les 2 codes ? Je souhaite en fait qu'il
>>> n'y ait pas d'onglet si le contenu de Commentaires est vide, mais je
>>> souhaite garder le sous-formulaire qui est sur l'autre onglet, et
>>> qu'il soit sur le formulaire principal (Je suis claire ?)
>>> Merci
>>> Sandrine
>>> On 18 juin, 13:37, Fabien wrote:
>>>> s.jean a écrit :
>>>>> Bonjour,
>>>>> alors il me mets "utilisation incorrecte de Null" avec
>>>>> Private Sub Form_Load()
>>>>> Me.tabAncien.Visible = Not (Me.Commentaires = Null)
>>>>> End Sub
>>>>> Par ailleurs la seule solution que j'ai trouvée pour masquer les
>>>>> onglets lorsque j'en ai qu'un seul est de jouer sur le style, mais il
>>>>> me reste la bordure. Y aurait - il un autre moyen ? Par ailleurs
>>>>> j'avais intégré ce code dans mon code, du coup je ne sais plus quoi en
>>>>> faire !
>>>>> Merci !
>>>>> Sandrine
>>>>> On 18 juin, 11:59, Fabien wrote:
>>>>>> s.jean a écrit :
>>>>>>> Bonjour,
>>>>>>> C'est bon ça marche finalement avec
>>>>>>> Private Sub Form_Load()
>>>>>>> If Me.Commentaires <> "0" Then
>>>>>>> Me.tabAncien.Visible = True
>>>>>>> Else
>>>>>>> Me.tabAncien.Visible = False
>>>>>>> End If
>>>>>>> End Sub
>>>>>>> Sandrine
>>>>>>> On 18 juin, 10:22, "s.jean" wrote:
>>>>>>>> Bonjour
>>>>>>>> Je souhaiterai masquer un onglet sous condition.
>>>>>>>> J'ai donc un formulaire frmDemandes avec 2 onglets A L'intérie ur de
>>>>>>>> l'onglet tabAncien j'ai un contrôle Commentaires (champs memo)
>>>>>>>> SI le champs Commentaires est vide je souhaiterai masquer l'ongl et
>>>>>>>> tabAncien qui contient ce contrôle. L'interet est que le champ s
>>>>>>>> Commentaires n'est plus utilisé aujourd'hui mais doit rester v isible
>>>>>>>> pour les anciens projets.
>>>>>>>> J'ai essayé avec le code suivant mais en vain ...
>>>>>>>> Private Sub Form_Load()
>>>>>>>> If Me.Commentaires = Null Then
>>>>>>>> Me.tabAncien.Visible = False
>>>>>>>> Else
>>>>>>>> Me.tabAncien.Visible = True
>>>>>>>> End If
>>>>>>>> End Sub
>>>>>>>> Pouvez vous me donner un coup de main ?
>>>>>>>> 2e question : lorsque cet onglet est invisible je souhaiterai re ndre
>>>>>>>> invisible l'autre onglet et passer le contenu de celui-ci sur le
>>>>>>>> formulaire principal de façon a ne pas avoir 1 onglet. Une id ée ?
>>>>>>>> merci
>>>>>>>> Sandrine
>>>>>> Que tu peux optimiser en
>>>>>> Private Sub Form_Load()
>>>>>>   Me.tabAncien.Visible = not(Me.Commentaires = Null)
>>>>>>   End Sub
>>>>>> ;-)- Masquer le texte des messages précédents -
>>>>>> - Afficher le texte des messages précédents -
>>>> Et avec :
>>>> Me.tabAncien.Visible = nz(Me.Commentaires,"")=""- Masquer le tex te des messages précédents -
>>>> - Afficher le texte des messages précédents -
>> Tu laisse le controle onglet actif et tu rend invisible la page qui
>> porte le commentaire
>> me.page_de_l'onglet_commentaire.visible=nz(me.commentaire,"")<>""
>> et si la case cocher35 est cochée tu refais apparaitre la page de l' onglet.- Masquer le texte des messages précédents -

>> - Afficher le texte des messages précédents -

Ben l'astuce serait de mettre ton sous formulaire  directement dans ton
formulaire et de le cacher par defaut. De mettre par dessus ton onglet
actuel .
Tu caches ton onglet et tu 'dé-cache' ton sous-formulaire en cas de bes oin.- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -