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

Colonnes invisibles dans sous-formulaire

1 réponse
Avatar
Gripoil
Bonjour =E0 tous,=20

Soit un formulaire principal avec un sous-formulaire (en=20
mode feuille de donn=E9es).=20

Je souhaiterais que les colonnes vides de mon sous-
formulaire soient masqu=E9es si le contenu de la colonne est=20
vide, de mani=E8re =E0 gagner en visibilit=E9.=20

J'ai plac=E9 ce code dans un module :

Sub AjusterCol(frm As Form)=20

Dim ctl As Control
=20
For Each ctl In frm.Controls=20
If ctl.ControlType =3D acTextBox Then=20
If Isnull(ctl.Value) Then=20
ctl.Visible =3D False=20
End If=20
End If=20
Next ctl=20

End sub

que j'appelle dans la proc=E9dure =E9v=E8nementielle "Sur=20
Activation" de mon sous-formulaire par :

Private Sub Form_Current()=20
AjusterCol Me=20
End Sub

Mon sous-formulaire ne contient qu'une seule ligne.=20

Apr=E8s tests, la boucle est bien prise en compte, mais la=20
propri=E9t=E9 ctl.Visible ne produit aucun effet.=20

Apr=E8s le passage en revue de tous les contr=F4les, Acces 97=20
me renvoie invariablement "Erreur 13 - Type incompatible".

J'ai =E9galement essay=E9, sans succ=E8s, avec :

ctl.ColumnHidden =3D -1=20
ou=20
ctl.ColumnWidth =3D 0

Merci pour vos r=E9ponses.

1 réponse

Avatar
Daniel Carollo
Bonsoir Gripoil!

Ce n'est pas possible en mode feuille de donnees.

--
Daniel :-)

Computing Technologies International - www.computing-tech.com - We
provide solutions...

"Gripoil" wrote in message
news:6e3f01c40201$b21a7e00$
Bonjour à tous,

Soit un formulaire principal avec un sous-formulaire (en
mode feuille de données).

Je souhaiterais que les colonnes vides de mon sous-
formulaire soient masquées si le contenu de la colonne est
vide, de manière à gagner en visibilité.

J'ai placé ce code dans un module :

Sub AjusterCol(frm As Form)

Dim ctl As Control

For Each ctl In frm.Controls
If ctl.ControlType = acTextBox Then
If Isnull(ctl.Value) Then
ctl.Visible = False
End If
End If
Next ctl

End sub

que j'appelle dans la procédure évènementielle "Sur
Activation" de mon sous-formulaire par :

Private Sub Form_Current()
AjusterCol Me
End Sub

Mon sous-formulaire ne contient qu'une seule ligne.

Après tests, la boucle est bien prise en compte, mais la
propriété ctl.Visible ne produit aucun effet.

Après le passage en revue de tous les contrôles, Acces 97
me renvoie invariablement "Erreur 13 - Type incompatible".

J'ai également essayé, sans succès, avec :

ctl.ColumnHidden = -1
ou
ctl.ColumnWidth = 0

Merci pour vos réponses.