XL 2021 ListeBox avec plusieurs colonnes

  • Initiateur de la discussion Initiateur de la discussion vmax67
  • 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 !

vmax67

XLDnaute Occasionnel
Bonsoir,

Je suis bloqué dans la finalisation de mon projet.

J’aimerais afficher dans la listbox lbx1 les colonnes A jusqu’à E après activation OptionButton1 et validation d’un Club dans le Combobox C1

Ensuite j’aimerais remplir les textbox de la manière suivante.

T1 Valeur colonne B

T4 Valeur colonne C

T2 Valeur colonne B

T5 Valeur colonne D

T3 Valeur colonne B

T6 Valeur colonne E

Idem après validation OptionButton 2

T7 Valeur colonne B

T10 Valeur colonne C

T8 Valeur colonne B

T11 Valeur colonne D

T9 Valeur colonne B

T12 Valeur colonne E

D’avance merci pour votre contribution
 

Pièces jointes

Bonsoir,
merci pour le retour, mais qu'une partie est résolue.
Les valeurs en T5, T6, T11 et T12 ne sont pas les bonnes car elle renvoie toujours la valeur de la colonne C
alors qu'il faudrait valeur des colonnes D pour T5& T11 et colonne E pour T6&T12
 
Hello

en modifiiant légèrement le code
VB:
Private Sub lbx1_Change()
    If Not EnableEvents Then Exit Sub
    On Error Resume Next
    C = 0
    For I = 0 To lbx1.ListCount - 1
        If lbx1.Selected(I) Then C = C + 1
        If C > 3 Then lbx1.Selected(lbx1.ListIndex) = 0
    Next I
    If Me.OptionButton1 Then
        deb = 1
        fin = 6
    Else
        deb = 7
        fin = 12
    End If
 If lbx1.Selected(lbx1.ListIndex) = True Then
    For w = deb To fin
        If Me("T" & w) = "" Then
            Me("T" & w) = lbx1.List(lbx1.ListIndex, 1)
            Me("T" & w + 3) = lbx1.List(lbx1.ListIndex, 2 + w - 1)
            Exit For
        End If
    Next w
 Else
    For Each w In Array(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)
        If w.Value = lbx1.List(lbx1.ListIndex, 1) Or w.Value = lbx1.List(lbx1.ListIndex, 2) Then
            Me(w.Name) = ""
        End If
    Next w
 End If
 End Sub
 
Hello

en modifiiant légèrement le code
VB:
Private Sub lbx1_Change()
    If Not EnableEvents Then Exit Sub
    On Error Resume Next
    C = 0
    For I = 0 To lbx1.ListCount - 1
        If lbx1.Selected(I) Then C = C + 1
        If C > 3 Then lbx1.Selected(lbx1.ListIndex) = 0
    Next I
    If Me.OptionButton1 Then
        deb = 1
        fin = 6
    Else
        deb = 7
        fin = 12
    End If
 If lbx1.Selected(lbx1.ListIndex) = True Then
    For w = deb To fin
        If Me("T" & w) = "" Then
            Me("T" & w) = lbx1.List(lbx1.ListIndex, 1)
            Me("T" & w + 3) = lbx1.List(lbx1.ListIndex, 2 + w - 1)
            Exit For
        End If
    Next w
 Else
    For Each w In Array(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)
        If w.Value = lbx1.List(lbx1.ListIndex, 1) Or w.Value = lbx1.List(lbx1.ListIndex, 2) Then
            Me(w.Name) = ""
        End If
    Next w
 End If
 End Sub
Bonjour,
merci pour l'aide tout fonctionne correctement sauf T10 à T12 qui ne se remplisse pas.
Pas trouvé la cause.
 
Hello

en modifiiant légèrement le code
VB:
Private Sub lbx1_Change()
    If Not EnableEvents Then Exit Sub
    On Error Resume Next
    C = 0
    For I = 0 To lbx1.ListCount - 1
        If lbx1.Selected(I) Then C = C + 1
        If C > 3 Then lbx1.Selected(lbx1.ListIndex) = 0
    Next I
    If Me.OptionButton1 Then
        deb = 1
        fin = 6
    Else
        deb = 7
        fin = 12
    End If
 If lbx1.Selected(lbx1.ListIndex) = True Then
    For w = deb To fin
        If Me("T" & w) = "" Then
            Me("T" & w) = lbx1.List(lbx1.ListIndex, 1)
            Me("T" & w + 3) = lbx1.List(lbx1.ListIndex, 2 + w - 1)
            Exit For
        End If
    Next w
 Else
    For Each w In Array(T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12)
        If w.Value = lbx1.List(lbx1.ListIndex, 1) Or w.Value = lbx1.List(lbx1.ListIndex, 2) Then
            Me(w.Name) = ""
        End If
    Next w
 End If
 End Sub
C'est le même code rien ne change
 
- 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
3
Affichages
963
Réponses
4
Affichages
1 K
Retour