1. Ce site utilise des "témoins de connexion" (cookies) conformes aux textes de l'Union Européenne. Continuer à naviguer sur nos pages vaut acceptation de notre règlement en la matière. En savoir plus.

XL 2007 [Résolu] Recupération valeur d'une combobox créée par VBA

Discussion dans 'Forum Excel' démarrée par lechti31, 13 Juin 2018.

  1. lechti31

    lechti31 XLDnaute Junior

    Inscrit depuis le :
    13 Septembre 2009
    Messages :
    90
    "J'aime" reçus :
    0
    Bonjour
    J'ai sur une feuille excel un bouton qui me permet d'ouvrir un Userform et d'y créer un nombre de textbox et combobox par rapport à une valeur dans la feuille excel.
    Sur ce userform, j'ai un bouton pour récuperer les valeurs que je rentre manuellement dans les Combobox
    Mon soucis est que je ne sais pas comment on récuperer les valeurs des combobox créées par VBA.
    Ci-joint mon fichier
    Merci pour votre aide
     

    Pièces jointes:

  2. Chargement...


  3. vgendron

    vgendron XLDnaute Barbatruc

    Inscrit depuis le :
    24 Février 2009
    Messages :
    4598
    "J'aime" reçus :
    427
    Utilise:
    Excel 2007 (PC)
    Hello

    un essai en remplacant tout ton code USF par celui ci
    Code (Visual Basic):

    Private Sub CommandButton1_Click()

    With Sheets("Feuil2")
        For i = 1 To 5
            .Range("A" & .Rows.Count).End(xlUp).Offset(1, 0) = Me.Controls("textrad" & i - 1)
            .Range("A" & .Rows.Count).End(xlUp).Offset(0, 1) = Me.Controls("CB" & i - 1)
        Next i
    End With

    End Sub

    Private Sub UserForm_initialize()
    b = Sheets("feuil1").Cells(1, 1).Value
    For i = 1 To b 'Création des labels avec les noms de la feuille
        Set rad = UserForm1.Controls.Add("forms.Label.1")
        With rad
            nom = "textrad" & i - 1
            .Name = nom
            .Left = 138
            .Top = 159 + i * 30
            .Width = 140
            .Height = 24
            .Caption = Sheets("feuil1").Cells(i, 4).Value
            .TextAlign = 2
        End With
    Next i
    For i = 1 To b 'création des Combobox
        Set rad = UserForm1.Controls.Add("forms.combobox.1")
        With rad
            .Name = "CB" & i - 1
            .Left = 300
            .Top = 153 + i * 30
            .Width = 140
            .Height = 20
            .Value = Sheets("feuil1").Cells(i, 5).Value
            .TextAlign = 2
        End With
    Next i
    End Sub

    'https://forum.hardware.fr/hfr/Programmation/VB-VBA-VBS/creation-textbox-dynamique-sujet_104861_1.htm

     
     
    lechti31 aime votre message.
  4. lechti31

    lechti31 XLDnaute Junior

    Inscrit depuis le :
    13 Septembre 2009
    Messages :
    90
    "J'aime" reçus :
    0
    Bonjour
    Merci vgendron ca fonctionne nickel
    J'ai une autre requete, sur la feuille 3 j'ai le choix avec plusieurs couleurs, suivant la couleur choisi j'ai plusieurs choix de points associés.
    Comment je peux faire pour avoir dans le premier combobox le choix des couleurs, et ensuite dans un second avoir le choix des points associés a la couleur choisit.
    Je sais le faire avec des combobox directement mis sur le Userform, mais pas dans les combobox créés par VBA.
    Merci de ton aide
     

    Pièces jointes:

  5. lechti31

    lechti31 XLDnaute Junior

    Inscrit depuis le :
    13 Septembre 2009
    Messages :
    90
    "J'aime" reçus :
    0
    Bonjour
    Personne pour m'aider, j'ai cherché tout ce ween end sans grand résultat
    Merci
     
  6. vgendron

    vgendron XLDnaute Barbatruc

    Inscrit depuis le :
    24 Février 2009
    Messages :
    4598
    "J'aime" reçus :
    427
    Utilise:
    Excel 2007 (PC)
    Hello
    il faut pouvoir détecter une sélection (evènement change) d'un combobox du formulaire pour mettre à jour la liste de chiffre en fonction de la couleur sélectionnée.

    la difficulté, c'est qu'ils ont été créés de manière dynamique.. ==>il faut donc aller voir du coté des modules de classe.

    Pour l'instant, pas trop le temps..
    va voir par la
    https://silkyroad.developpez.com/VBA/ControlesUserForm/#LII-F

    ou ici
    https://www.developpez.net/forums/d...e-combobox-cree-dynamiquement-controls-event/
     
  7. vgendron

    vgendron XLDnaute Barbatruc

    Inscrit depuis le :
    24 Février 2009
    Messages :
    4598
    "J'aime" reçus :
    427
    Utilise:
    Excel 2007 (PC)
    Hello
    Voir PJ :-D
     

    Pièces jointes:

  8. lechti31

    lechti31 XLDnaute Junior

    Inscrit depuis le :
    13 Septembre 2009
    Messages :
    90
    "J'aime" reçus :
    0
    Waouh ;):)
    Merci beaucoup vgendron, ça fonctionne parfaitemen.
    Je ne connaissait pas du tout cette méthode de liste.
    Je vais maintenant essayer d'adapter ce code à mon fichier original.
    Je reviendrai vers toi si j'ai un soucis. ;)
     

Partager cette page