ListBox
Fermé
Tam
-
29 juin 2016 à 13:35
f894009 Messages postés 17206 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2024 - 30 juin 2016 à 15:56
f894009 Messages postés 17206 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 22 novembre 2024 - 30 juin 2016 à 15:56
3 réponses
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
29 juin 2016 à 13:53
29 juin 2016 à 13:53
Bonjour
capture d écran de l'indispenasble
https://silkyroad.developpez.com/VBA/ControlesUserForm/#LII-G
capture d écran de l'indispenasble
https://silkyroad.developpez.com/VBA/ControlesUserForm/#LII-G
f894009
Messages postés
17206
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 novembre 2024
1 711
29 juin 2016 à 14:04
29 juin 2016 à 14:04
Bonjour,
'sur choix temps reel
ou avec un bouton pour traitement des choix
'sur choix temps reel
Private Sub ListBox1_Change() For j = 0 To ListBox1.ListCount - 1 If ListBox1.Selected(j) = True Then MsgBox ListBox1.List(j) End If Next j End Sub
ou avec un bouton pour traitement des choix
Private Sub CommandButton1_Click() For j = 0 To ListBox1.ListCount - 1 If ListBox1.Selected(j) = True Then MsgBox ListBox1.List(j) End If Next j End Sub
Bonjour
Je m'excuse mais je n'y arrive pas...
mon code se fait en deux parties :
1) Ouverture du userform
Private Sub UserForm_Activate()
If Range("C3") <> "" And Range("C4") <> "" Then
LB01_Selection.RowSource = Range("C3:" & Range("C3").End(xlDown).Address).Address
LB01_Selection.MultiSelect = fmMultiSelectMulti
ElseIf Range("C3") <> "" And Range("C4") = "" Then
LB01_Selection.RowSource = Sheets("Liste").Range("C3").Address
LB01_Selection.MultiSelect = fmMultiSelectSingle
Else: LB01_Selection.RowSource = Sheets("Liste").Range("C2").Address
End If
End Sub
2) Clique sur le bouton "Valider" après selection dans la LB
Private Sub CB01_Valider_Click()
For j = 0 To LB01_Selection.ListCount - 1
If LB01_Selection.Selected(j) = True Then
MsgBox LB01_Selection.List(j)
selection = True
Else: selection = False
End If
Next
If selection = False Then
MsgBox ("sélectionner au moins un échantillon")
Exit Sub
...
Je ne comprend pas ce qui ne colle pas...
Merci pour vos réponses
Je m'excuse mais je n'y arrive pas...
mon code se fait en deux parties :
1) Ouverture du userform
Private Sub UserForm_Activate()
If Range("C3") <> "" And Range("C4") <> "" Then
LB01_Selection.RowSource = Range("C3:" & Range("C3").End(xlDown).Address).Address
LB01_Selection.MultiSelect = fmMultiSelectMulti
ElseIf Range("C3") <> "" And Range("C4") = "" Then
LB01_Selection.RowSource = Sheets("Liste").Range("C3").Address
LB01_Selection.MultiSelect = fmMultiSelectSingle
Else: LB01_Selection.RowSource = Sheets("Liste").Range("C2").Address
End If
End Sub
2) Clique sur le bouton "Valider" après selection dans la LB
Private Sub CB01_Valider_Click()
For j = 0 To LB01_Selection.ListCount - 1
If LB01_Selection.Selected(j) = True Then
MsgBox LB01_Selection.List(j)
selection = True
Else: selection = False
End If
Next
If selection = False Then
MsgBox ("sélectionner au moins un échantillon")
Exit Sub
...
Je ne comprend pas ce qui ne colle pas...
Merci pour vos réponses
f894009
Messages postés
17206
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
22 novembre 2024
1 711
30 juin 2016 à 15:56
30 juin 2016 à 15:56
Bonjour,
Evitez de mettre des mots reserves comme Selection en nom de variable:
pour l'initialisation de l'UF, les cellules C3 et C4 sont de quelle feuille ?????
Evitez de mettre des mots reserves comme Selection en nom de variable:
Private Sub CB01_Valider_Click() Sel = False For j = 0 To LB01_Selection.ListCount - 1 If LB01_Selection.Selected(j) = True Then MsgBox LB01_Selection.List(j) Sel = True End If Next j If Sel = False Then MsgBox ("sélectionner au moins un échantillon") Exit Sub End If End Sub
pour l'initialisation de l'UF, les cellules C3 et C4 sont de quelle feuille ?????