Microsoft 365 besoin d'aide pour listbox excel vba 365

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 !

sylviecro

XLDnaute Nouveau
Bonjour,

Très débutante en vba, j'ai cherché sur le forum, mais je ne trouve pas ce que je cherche. Tout est beaucoup plus compliqué que ce que je désire.

Voilà mon problème : j'ai un listeBox sur USF (relié à une liste à Rowsource sur une autre feuille). J'aimerais juste que l'on puisse cliquer sur un premier choix de cette listeBox et que le choix se s'écrive dans une feuille à une cellule ex ; a1. Et qu'on puisse aussi faire un 2e et 3e choix et que ça s'écrive à la suite du 1er.

Je me demande juste si j'ai vraiment besoin d'une listebox ou si un comboBox peut faire l'affaire! De toute façon l'un ou l'autre je sais pas comment faire le code.

Merci de votre aide.

Sylvie
 
Solution
Bonjour,


VB:
Dim f
Private Sub UserForm_Initialize()
  Set f = Sheets("feuil1")
  Set Rng = f.Range("F2:F" & f.[F65000].End(xlUp).Row)
  Me.ListBox1.List = Rng.Value
  Me.ListBox1.MultiSelect = fmMultiSelectMulti
End Sub

Private Sub ListBox1_Change()
  temp = ""
  For i = 0 To Me.ListBox1.ListCount - 1
    If Me.ListBox1.Selected(i) Then temp = temp & Me.ListBox1.List(i)
  Next i
  f.[a1] = temp
End Sub

Boisgontier
Merci beaucoup de votre réponse
Bonjour,


VB:
Dim f
Private Sub UserForm_Initialize()
  Set f = Sheets("feuil1")
  Set Rng = f.Range("F2:F" & f.[F65000].End(xlUp).Row)
  Me.ListBox1.List = Rng.Value
  Me.ListBox1.MultiSelect = fmMultiSelectMulti
End Sub

Private Sub ListBox1_Change()
  temp = ""
  For i = 0 To Me.ListBox1.ListCount - 1
    If Me.ListBox1.Selected(i) Then temp = temp & Me.ListBox1.List(i)
  Next i
  f.[a1] = temp
End Sub

Boisgontier
 

Pièces jointes

Bonjour,


VB:
Dim f
Private Sub UserForm_Initialize()
  Set f = Sheets("feuil1")
  Set Rng = f.Range("F2:F" & f.[F65000].End(xlUp).Row)
  Me.ListBox1.List = Rng.Value
  Me.ListBox1.MultiSelect = fmMultiSelectMulti
End Sub

Private Sub ListBox1_Change()
  temp = ""
  For i = 0 To Me.ListBox1.ListCount - 1
    If Me.ListBox1.Selected(i) Then temp = temp & Me.ListBox1.List(i)
  Next i
  f.[a1] = temp
End Sub

Boisgontier
Merci beaucoup de votre réponse
 
- 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

Réponses
38
Affichages
888
  • Question Question
Réponses
7
Affichages
186
Réponses
15
Affichages
414
Réponses
2
Affichages
247
Réponses
72
Affichages
1 K
  • Question Question
Autres Code VBA
Réponses
11
Affichages
251
Réponses
40
Affichages
1 K
Réponses
21
Affichages
2 K
Réponses
16
Affichages
946
Retour