Listbox et combobox

Bonjour à tous,

J'ai une listbox ou je fais défiler les enregistrements avec des boutons < et >.

image

Aprés avoir enregistré les eleves d'une classe 2 fois pour les 2 premiéres matières avec des notes, j'ai un comportement bizarre de la combobox (en cascade) qui change de matiére en changeant d'élève.

Pour mieux comprendre, ouvrez le formulaire en clic droit sur une page, et le probléme se passe en sélectionnant 6émé2 dans la liste deroulante classe et composition française en combo matiére. Cliquez sur lister.

Si je passe au 2eme éléve de la liste avec >, il passe à la matiére conduite, la 2éme aprés 'composition française' qui soit listée pour cette classe dans l'onglet notes correspondant. Pourtant çà ne correspond pas à une requête et bloquer la combobox n'affiche plus rien.

Merci de votre aide.

Private Sub btnApres_Click()
Dim i%, j%, drl3%, ws1 As Worksheet, ws2 As Worksheet, matric$
    Set ws1 = Sheets("eleves")
    drl1 = ws1.Range("B" & Rows.Count).End(xlUp).Row
    Set ws2 = Sheets("notes")
    drl2 = ws2.Range("B" & Rows.Count).End(xlUp).Row
If Me.lstElev.Selected(Me.lstElev.ListCount - 1) = True Then 'si 1ere ligne sélectionnée
    MsgBox "Vous êtes à la derniére ligne."
    Exit Sub
End If
'passage à la ligne suivante
        'MsgBox Me.lstElev.ListCount - 1 '11
        '    MsgBox Me.lstElev.List(j + 1)  '185
         '   MsgBox Me.lstElev.List(j + 1, 0) '185
    For j = 0 To Me.lstElev.ListCount - 1 'boucle sur tous les éléments de la ListBox à partir du second
        If Me.lstElev.Selected(j) = True Then 'si 1ere ligne sélectionnée
            Me.lstElev.Selected(j) = False 'désélectionne l'élément
            Me.lstElev.Selected(j + 1) = True 'sélectionne le prochain
            matric = Me.lstElev.List(j + 1, 0)
            Exit For
        End If
    Next j
...
16ecole.xlsm (226.62 Ko)

Cdt

schermafbeelding 2022 07 17 080818 schermafbeelding 2022 07 17 080610

le 136 a 3 matières et ce boucle sera fait 3 fois, la derniere fois (donc ce qu'on voit après execution) avec matière EDHC

Bonjour

Un essai à tester. Te convient-il ?

29ecole-v1.xlsm (172.42 Ko)

Bye !

Bonjour gmb et BsAlv,

Merci pour votre aide.

Effectivement cette ligne en résultat de recherche de la boucle était le probléme.

ecole.cmbMat.Value = ws2.Cells(i, 6).Value 'matiere

et je l'ai déplacé en critére de recherche de la boucle et la combo ne bouge plus.

For i = 2 To drl2
    If ws2.Range("A" & i) = matric And ecole.cmbMat.Value = ws2.Cells(i, 6).Value Then 
            'ecole.cmbMat.Value = ws2.Cells(i, 6).Value 'matiere
            ecole.D1.Value = ws2.Cells(i, 7).Value 'D1 1er tr

Merci

Rechercher des sujets similaires à "listbox combobox"