Pour la liste tu peux utiliser une ListBox :
Private Sub UserForm_Initialize()
Dim i As Integer
Dim f As Worksheet
Sheets("Nom de ta feuille").Select
Set f = Worksheets("Nom de ta feuille")
Set Rng = f.Range("B8:F" & f.[B65000].End(xlUp).Row - 1)' Cellules d'où proviennent tes données
Me.Combobox1.ColumnHeads = True 'En-têtes
Me.Combobox1.ColumnCount = 5 'Nombre de colonnes
Me.Combobox1.ColumnWidths = "125;50;0;0;30" 'Largeur entre les colonnes
Me.Combobox1.RowSource = Rng.Address 'Ajout de tes cellules sélectionnées plus haut dans la Listbox
end sub
Ce code provient d'une Listbox (Listbox1 à juste été transformer en Combobox1). Ca devrait quand même marcher.
2. Pas compris ce que tu voulais
3. Tes infos à mettre dans les cellules des lignes sont chacunes dans une listbox différente ? Si oui tu as juste à faire :
Sheets("XXXX").cells(X,Y).value= Userform1.Combobox1.value
tu le fais pour toutes les combobox ou alors tu fais une boucle avec For. Exemple :
For i = 1 to 10
Sheets("XXX").cells(1,i).value = userform1.combobox1.value
next i
4. Ton petit code devrait fonctionné, tu as esssayé ?