Bonjour,

Voici mon probleme avec l'utilisation de la propriété selected sur une zone de liste.

Avec un bouton j'INSERT (1 seul enregistrement) la table affichée dans une zone de liste (lstMaListe). Un requery me permet de mettre à jour la liste. Jusque la pas de probleme.

Ensuite je positionne le selecteur de la liste sur mon nouvel enregistrement => parcours de la liste et affectation de lstMaListe.selected à True lorsque je le trouve. Toujours pas de soucis.

Ca devient amusant quand je fait un second requery sur ma liste (apres un UPDATE sur mon nouvel enregistrement mais ca me fait pareil si je le fait pas) car la selection va se placer sur la ligne qui était selectionnée avant de commencer la procédure.

en gros le fonctionnement :
Etat de depart de la liste : 3 lignes (de 0 à 2), ligne 2 selectionnée
Evenement : bouton de création d'un enregistrement + requery + placement sur la ligne 0
Etat de la liste : 4 lignes (de 0 à 3), ligne 0 selectionnée
Evenement : requery
Etat de la liste : 4 lignes (de 0 à 3), ligne 2 selectionnée <----- mais pourquoi donc ?

J'espere que j'ai été clair

Merci d'avance de vos aides.

PS : Le code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
Private sub cmdMonBouton_Click()
    'Déclaration
    Dim ......
 
    'Création de l'enregistrement
    DoCmd.RunSQL MaRequetDeCreation
 
    lstMaListe.requery
 
    'Boucle de recherche de ma nouvelle ligne dans lstMaListe     
    For b = 1 To lstMaListe.ListCount - 1
        If lstListe.ItemData(b) = numauto Then
            lstMaListe.Selected(b) = True
        Else
            lstMaListe.Selected(b) = False
        End If
    Next
 
    lstMaListe.requery
End Sub