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