- Ouvrez un nouveau Classeur Excel
- Sélectionnez le Menu Outil   Macro Visual basic Editor [ou appuyez sur les touches CTRL + F11] Macro Visual basic Editor [ou appuyez sur les touches CTRL + F11]
- Sélectionnez le Menu Affichage   Boîte à outils [Afin d'avoir les outils nécessaires à la constitution de notre Userform] Boîte à outils [Afin d'avoir les outils nécessaires à la constitution de notre Userform]
- Sélectionnez le Menu Insertion   Userform [Dès lors, une Userform vierge s'affiche - Cette Userform est est nommée Userform1 défaut] Userform [Dès lors, une Userform vierge s'affiche - Cette Userform est est nommée Userform1 défaut]
- Cliquez sur l'outil  Zone de liste modifiable
   
 
- Dessinez votre zone de liste déroulante
   
 
- Cliquez-droit sur le bouton sélectionnez l'option Propriétés
- Tapez les références de la feuille et des cellules concernées [Dans notre exemple : Feuil3!A1:A10]
   
 
- Double-cliquez sur la liste déroulante  saisissez le code suivant : saisissez le code suivant :[A1] = UserForm1.ComboBox1 A NOTER : Pour attribuer un Valeur par défaut sur une liste délourante, renseignez le champ Value par la valeur par défaut souhaitée
  
 
- Cliquez-droit sur le Userform concerné  Tapez le code suivant : Tapez le code suivant :Private Sub UserForm_Initialize() ComboBox1.ColumnCount = 1 ComboBox1.List() = Array("", "Pommes", "Poires", "Bananes") End Sub
- Créez votre liste dans une Feuille Excel
- Sélectionnez le Menu  Insertion  Nom Nom Définir Définir
- Attribuez un nom à cette liste
- Dessinez votre zone de liste déroulante sur le Userform concerné   
 
- Double-cliquez sur la liste déroulante  Entrez le code suivant Entrez le code suivantPrivate Sub UserForm_Initialize() ComboBox1.RowSource = ("NomdelaListe") End Sub
- Créez votre liste dans une Feuille Excel dans les cellules A1 à A10
- Dessinez votre zone de liste déroulante sur le Userform concerné   
 
- Double-cliquez sur la liste déroulante  Entrez le code suivant Entrez le code suivantPrivate Sub UserForm_Initialize() Dim i For i = 1 To 10 ComboBox1.AddItem Sheets("Feuil1").Cells(i, 1) Next End Sub
- A Savoir : Pour récupérer la valeur choisie dans la cellule A1 : [A1] = ComboBox1.Value ou [A1] = ComboBox1
Private Sub UserForm_initialize()
  With ComboBox1
     .AddItem "Pommes"
     .AddItem "Poires"
     .AddItem "Bananes"
     .AddItem "Fraises"
     .AddItem "Oranges"
 End With
End Sub Autre solution : Initialiser les données de la liste déroulante directment via VBA en prenant une colonne précise jusqu'à la dernière cellule non vide Set FL = ThisWorkbook.Sheets("Feuil1")  'Identification de la feuille concernée
Ligne = FLRange("D65536").End(xlUp).Row  Positionnement de la dernière cellule à récupérer
For i = 7 To Ligne            'Démarre à la ligne 7 jusqu'à la ligne définit dans la variable Ligne
    With Me.ComboBox1          
         .AddItem FL.Range("H" & i) 
    End With
Next i                    
End Sub
 
 
Aucun commentaire:
Enregistrer un commentaire