Propriétés d'un UserForm

Résolu
Bonjour,

J'ai créé un UserForm qui contient des ToggleButtons pour afficher/masquer les colonnes d'un "grand" tableau excel. Mon UserForm est basique et l'utilisateur a le seul choix de cliquer sur la croix pour fermer le UserForm.

Je souhaite maintenant l'améliorer pour par exemple :
- Pouvoir faire défiler mon tableau à droite ou en en bas avec les scrollbars (sans fermer mon Userform)
- Pouvoir redimensionner le cadre du UserForm, le minimiser

Merci par avance de votre aide !

3 réponses

  1. Je me réponds à moi-même ;)

    j'ai remplacé If Controls("ToggleButton" & a) = True Then
    par If Columns(c).Hidden = True Then

    en déclarant la variable c au préalable et j'initialise chaque ToggleButton un par an.

    Ca a l'air de marcher.
    1. Contributeur
      bonsoir,

      Je me réponds à moi-même ;)
      C'est parfait, c'est ce qu'il fallait faire : pour positionner les contrôles il faut tester les objets qu'ils contrôlent.
  2. Bonjour,

    Merci pour ta réponse

    Il te suffit de le lancer en non modal. => OK, j'ai juste mis "UserForm1.Show (0)" et ça marche

    Maintenant j'essaie d'initialiser le UserForm de telle sorte que soient visibles sur les ToggleButtons les colonnes affichées ou non. Exemple : Si l'utilisateur appuie sur le ToggleButton, la macro s'exécute bien, la colonne se masque. Après je ferme le UserForm, le réouvre, et là je voudrais avoir le bouton enfoncé, car la colonne est masquée.

    J'ai essayé ce code là sans succès :

    Private Sub UserForm_Initialize()

    Dim a As Integer

    For a = 1 To 8
    If Controls("ToggleButton" & a) = True Then
    Controls("ToggleButton" & a).Value = True
    End If

    Next

    End Sub
    1. Contributeur
      Bonjour,

      - Pouvoir faire défiler mon tableau à droite ou en en bas avec les scrollbars (sans fermer mon Userform)
      Il te suffit de le lancer en non modal.

      - Pouvoir redimensionner le cadre du UserForm, le minimiser
      Tu as plusieurs façon de le faire, en utilisant le zoom par exemple.

      Tu devrais regarder ce tuto qui va te donner des idées.