[VBA] Selected et requery sur zone de liste
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:
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 |