Bonjour à toutes et tous et merci de votre temps et de votre aide.
J'ai un formulaire avec un paquet de colonnes (env 25) or du à mes données beaucoup sont vides pour de nombreux enregistrement ou ne m'intéressent pas dans le moment. Pour le rendre plus lisible j'ai essayé de cacher des colonnes avec le menu contextuel choix "masquer les colonnes".
Ça, ça marche. Mon problème est que je voudrais que VBA les fasses réapparaître au chargement. J'ai donc essayé le code suivant :
Que j'appelle sur OnLoad et bien que le code s'exécute (je l'ai tracé) et la propriété est bien changée pour ColumnHidden=false, mes colonnes restent cachées.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 Private Sub UnhideAllColumn() 'On Error GoTo Err_UnhideAllColumn Dim c As Control For Each c In Me.Controls Select Case c.ControlType Case acLabel 'Ne rien faire Case Else c.ColumnHidden = False c.Visible = True End Select Next c Exit_UnhideAllColumn: Exit Sub Err_UnhideAllColumn: Select Case Err.Number Case 438 'ignorer Resume Next Case Else Call DisplayStandardErrMsg(Err) End Select Resume Exit_UnhideAllColumn End Sub
La seule méthode pour les retrouver est de passer par le menu contextuel. Ça marche mais c'est pénible et il faut savoir qu'il y a des colonnes cachées.
Quelqu'un sait comment faire par code ?
A+
Partager