Bonjour,
Dans ma base Access, j'ai un formulaire Commandes dans lequel j'ai inséré un sous-formulaire Produits
Dans ce sous-formulaire, 2 listes déroulantes dont la deuxième dépend de la première. J'ai appliqué exactement la méthode du tutoriel
et bien sûr ça marche quant à la restriction des choix de la deuxième liste... mais...
Mon problème : lorsque j'effectue une première sélection, le texte correspondant reste affiché dans la liste de choix, en revanche, lorsque je change d'enregistrement et que je répète le choix dans l'enregistrement suivant, le texte n'est plus affiché quand je reviens sur le premier enregistrement.
Je pense qu'il faudrait peut-être ajouter un evenement sur Perte Focus de la liste de commande ou sur le On Current du sous formulaire mais je ne sais pas lequel... Quelqu'un pourrait-il m'aider ?
Pour (peut-être) être plus simple, voici le code que j'utilise actuellement :
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 Private Sub IDtypetransition_AfterUpdate() Dim lngIDCat As Long Dim SQL As String '' Vérifie que l'on a cliqué sur une catégorie pour éviter le NULL If Not IsNumeric(Me!IDtypetransition) Then Exit Sub '' Affecte la valeur de IDCategorie à la variable lngIDCat lngIDCat = Me!IDtypetransition '' Construit la chaîne SQL avec la catégorie concernée SQL = "SELECT IDproduit, Nomproduit, Typeproduit FROM Produits WHERE Typeproduit =" & lngIDCat & " ORDER BY Nomproduit" '' Affecte la chaîne SQL à la liste des métiers IDproduittransition.RowSource = SQL '' Déverrouille la liste des métiers IDproduittransition.Enabled = True '' Donne le focus la liste des métiers IDproduittransition.SetFocus '' Déroule la liste des métiers IDproduittransition.Dropdown End Sub
Partager