Créer checkbox dans UF

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Airone784

XLDnaute Occasionnel
Bonjour à tous,

Je nage (enfin je coule plutôt) alors je me tourne vers vous 🙄...

Je voudrais lorsque j'ouvre une UF que soit crée autant de checkbox qu'il y a de valeur dans ma colonne A de ma feuille 1.
En sus, je souhaiterais que ces différentes checkbox créées dynamiquement prennent le nom de chaque valeur de ma colonne A. (ex: dans ma colonne A, si j'ai une ligne, rouge, bleu, vert, noir).
A l'ouverture de l'UF j'ai une checkbox dont la propriété caption est rouge l'autre bleu, l'autre vert, l'autre noir,...

J'ai quelques pistes avec ce bout de code mais je ne m'en sort pas
Code:
Me.Controls.Add("forms.Checkbox.1")

De plus, comment faire pour que les checkbox se placent bien les unes des autres???

Merci de votre aide précieuse 🙂

Bye
 
Re : Créer checkbox dans UF

J'ai regardé Jam, mais ça ne m'aide pas beaucoup. En revanche j'ai trouvé ce code :

Code:
 '--------------------------------------
'Procédure de création des CheckBoxs à placer dans l'UserForm.
'L'UserForm doit préalablement contenir un bouton nommé CommandButton1

Option Explicit

Private Sub CommandButton1_Click()
Dim Obj As Control
Dim Cl As Classe1
Dim i As Integer

Set Collect = New Collection

For i = 1 To 3 'boucle pour la création des CheckBox
    Set Obj = Me.Controls.Add("forms.Checkbox.1")
    With Obj
        .Name = "moncheckbox" & i
        .Object.Caption = "le texte" & i
        .Left = 140
        .Top = 30 * i + 10
        .Width = 50
        .Height = 20
    End With
    
    'ajout de l'objet dans la classe
    Set Cl = New Classe1
    Set Cl.ChkBx = Obj
    Collect.Add Cl
Next i

End Sub
'--------------------------------------

Code:
 '--------------------------------------
'A placer dans un module de classe nommé "Classe1"
'
Option Explicit

Public WithEvents ChkBx As MSForms.CheckBox

'Exemple pour gérer l'évènement clic sur les objets type CheckBox
Private Sub ChkBx_Click()
    'cet exemple affiche le nom et la valeur de l'objet cliqué
    MsgBox ChkBx.Name & ": " & ChkBx.Value
End Sub
'--------------------------------------
Code:
'--------------------------------------
'A placer dans un module standard
Option Explicit

Public Collect As Collection
'--------------------------------------

Effectivement en changeant la boucle j'obtiens ce que je veux mais j'ai 2 questions :

- Comment faire pour gérer la propriété left de chaque checkbox. Dans l'exemple la propriété top est géré mais pas left or j'ai bien 15 checkbox à mettre dans ma UF et je veux faire au moins 2 colonnes de checkbox. Bref, comment lui dire que si j'ai déjà 5 checkbox dont la valeur left est 140, les suivantes seront positionnées en left = 220 par exemple????

- Pouvez-vous me décortiquer le code que j'ai copié ci-dessus et m'expliquer chaque ligne du code car j'ai du mal à comprendre chaque ligne du code et du coup, le simple fait de recopier "bètement" ne me fait pas progresser à mon grand désarroi...🙁

Merci merci. 🙂
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

K
  • Question Question
XL 2016 Checkbox
Réponses
0
Affichages
714
KOKI025KOKI
K
K
  • Question Question
XL 2016 CheckBox
Réponses
1
Affichages
582
B
Réponses
4
Affichages
794
blingo67
B
R
Réponses
7
Affichages
1 K
L
Réponses
10
Affichages
2 K
Retour