Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Liste à choix multiples

  • Initiateur de la discussion Initiateur de la discussion al38
  • Date de début Date de début

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 !

al38

XLDnaute Nouveau
Bonjour à tous,

voilà, j'essaie de créer une liste à choix multiples dans Excel et pour cela, j'ai inséré une liste box. Malheureusement, je n'arrive pas à lier ma sélection à des cellules.

Après plusieurs recherches sur internet, j'ai compris qu'il n'y avait pas d'autres solutions que de passer par VBA. J'ai alors récupéré un code mais ce n'est pas encore l'idéal 😕

Sub ListBox3_Change()
Dim LB As ListBox
Dim i As Long
Set LB = ActiveSheet.ListBoxes("List Box 3")
With LB
For i = 1 To .ListCount
If .Selected(i) Then
Cells(54, "A").Value = .List(i)

End If
Next i
End With
End Sub

En fait, je voudrai que les valeurs sélectionnées soient liées aux celulles de A54 à A60 par exemple.

Quelqu'un peut-il m'aiguiller svp ?

Merci 🙂
 
Re : Liste à choix multiples

Bonjour

A ) Tu dois utiliser un contrôle "Listbox" qui émane de la barre d'outils "Contrôle".

B ) Pour boucler sur tous les items du listbox, tu dois te rappeler que l'index de
l'item 1 est 0 non pas 1. Tu dois adapter la boucle en conséquence :

For i = 0 To .ListCount - 1

C ) Au lieu d'utilise des expressions comme ActiveSheet, Il est préférable d'employer
Soit une variable objet "Worksheet" comme dans l'exemple No 2 ou de faire
Intervenir le nom de l'objet "Feuille" visible seulement dans l'environnement de
de l'éditeur de vba dans l'arborescence des objets de ton projetVBA
Exemple : Feuil1(toto)
Feuil1 -> représente la propriété Name de l'objet "Feuille"
Toto -> est le nom de l'onglet de la feuille de calcul.

L'avantage de procéder de cette manière est que tu vas obtenir une liste déroulante
affichant les propriétés et méthodes disponibles des objets contrairement à ActiveSheet.
Tu auras moins de chance de faire des fautes d'orthographe, de plus, cette liste déroulante
est un aide mémoire important des propriétés et méthodes disponibles pour un objet.

D ) Ici, ce sont des intégristes du VBA, si tu ne publies pas un fichier, tu n'as pas de réponse!

'------------------------------------------------------------
Sub ListBox3_Change()
Dim LB As ListBox, Compteur As Long
Dim i As Long

Compteur = 54 ' La ligne de départ

'Feuil1 n'est pas le nom de l'onglet mais le nom
'de la propriété "Name" de l'objet "Feuille" visible
'seulement en VBA.

With Feuil1
With .ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
Feuil1.Cells(Compteur, "A").Value = .List(i, 0)
Compteur = Compteur + 1
End If
Next
End With
End With
End Sub
'------------------------------------------------------------

Sub ListBox3_Change2()
Dim LB As ListBox, Compteur As Long
Dim i As Long, Sh As Worksheet

Set Sh = ActiveSheet

Compteur = 54 ' La ligne de départ

With Sh
With .Shapes("ListBox1").OLEFormat.Object.Object
For i = 0 To .ListCount - 1
If .Selected(i) Then
Feuil1.Cells(Compteur, "A").Value = .List(i, 0)
Compteur = Compteur + 1
End If
Next
End With
End With
End Sub

'------------------------------------------------------------


MichD
---------------------------------------------------------------
 
Re : Liste à choix multiples

Bonjour MichD et merci beaucoup pour ta réponse si rapide,

alors j'ai essayé de copier ton code mais j'avoue que je ne le comprends pas vraiment (j'ai complétement décrocher sur la seconde partie, je suis trop mauvais en VBA 🙁)

Alors j'ai créé un fichier similaire que j'ai mis en PJ, et j'apprécierai vmt si tu pouvais y jeter un coup d'oeil,





(pour info, je ne sais pas si ca a de l'importance mais j'utilise excel en anglais donc peut être verras-tu sheet à la place de feuille et d'autres termes de ce style en anglais)
 

Pièces jointes

- 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
10
Affichages
459
Réponses
2
Affichages
345
Réponses
10
Affichages
812
Réponses
4
Affichages
531
Réponses
3
Affichages
798
Réponses
2
Affichages
786
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…