Organisation des objets dynamiques dans un userform

Bonjour le forum,

Je travaille avec bien des difficultés sur la création dynamique de checkbox dans un userform.

J'ai des libellés qui demandent à ce que le checkbox passe en autosize =true car ils ne tiennent pas sur une ligne.

Mon problème est de trouver la hauteur du checkbox pour tenir compte du top du checkbox suivant.

J'ai ce code:

OrigineLabel = 95
For Each Alim_c In Range(Plage_competence)
    Set Obj = UserForm4.Controls.Add("forms.Checkbox.1")
    ' Compléter les checkbox
    With Obj
         .Object.Caption = (Alim_c & " " & Alim_c.Offset(, 1)) 'libelle
         ' propriété du checkbox
         .Top = OrigineLabel
         .AutoSize = True
         .Left = 3                                          ' Départ gauche
         .Width = 350                                       ' largeur
         .Value = False                                     ' décoché
         .Locked = False                                    ' déverrouillé
         .ForeColor = RGB(0, 0, 0)                          ' couleur noir
         OrigineLabel = OrigineLabel + .Height
     End With

    'ajout de l'objet à la classe
            Set Cl = New AdPfmp
            Set Cl.ChkBx = Obj
            Collect.Add Cl
Next Alim_c

Que puis-je ajouter pour que ma variable OrigineLabel soit juste?

Merci pour les conseils.

ddetp88

Bonjour,

Peut-être en mettant en premier Autosize, avant Caption?

       With Obj
             .AutoSize = True
             .Object.Caption = (Alim_c & " " & Alim_c.Offset(, 1)) 'libelle
  

Peut-être?

Bon Dimanche

Pas mal et surprenant mais ça fonctionne.

J'ai passé toutes les informations des propriétés du checkbox et tout est rentré dans l'ordre.

With Obj
         ' propriété du checkbox
         .Top = OrigineLabel
         .AutoSize = True
         .Left = 362                                        ' Départ gauche
         .Width = 50                                        ' largeur
         .Value = False                                     ' décoché
         .Locked = False                                    ' déverrouillé
         .ForeColor = RGB(0, 0, 0)                          ' couleur noir
        'Ecrire le libellé du checkbox
         .Object.Caption = Alim_c 'code compétence

         OrigineLabel = OrigineLabel + .Height
     End With

Merci cousinhub

ddetp88

Rechercher des sujets similaires à "organisation objets dynamiques userform"