Bonjour,
J'utilise un formulaire avec 3 zones de liste déroulante aux quelles je veux appliquer la même action :
Que l'utilisateur puisse entrer une valeur qui n'est pas comprise dans la liste et que celle-ci soit enregistrer dans la table en question.
J'ai déjà réalisé ce que je veux pour la première liste :
Le seul problème c'est que de cette façon l'utilisateur doit rentrer deux fois la valeur ...
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 NomClient_Resultat_NotInList(NewData As String, Response As Integer) 'Désactive l affichage des messages système DoCmd.SetWarnings False 'Met à jour la table Elevage avec la nouvelle donnée NewData DoCmd.RunSQL "INSERT INTO Client ( [Client] ) SELECT " & NewData & " AS Expr3;" 'Met à jour la zone de liste déroulante Me.NomClient_Resultat.RowSource = "SELECT Client.[Client] FROM Client; " 'Intercepte l'erreur et l'inhibe Response = acDataErrContinue 'Active l affichage des messages système DoCmd.SetWarnings True End Sub
Ensuite, j'ai répété la même chose pour ma seconde liste :
Cette fois avec le même code je n'entre qu'une seule fois la nouvelle valeur.
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 NumAffaire_Texte_NotInList(NewData As String, Response As Integer) 'Désactive l affichage des messages système DoCmd.SetWarnings False 'Met à jour la table Elevage avec la nouvelle donnée NewData DoCmd.RunSQL "INSERT INTO Lancements ( [NumAffaire] ) SELECT " & NewData & " AS Expr1;" 'Met à jour la zone de liste déroulante Me.NumAffaire_Texte.RowSource = "SELECT Lancements.[NumAffaire] FROM Lancements;" 'Intercepte l'erreur et l'inhibe Response = acDataErrContinue 'Active l affichage des messages système DoCmd.SetWarnings True End Sub
Le problème c'est que lorsque ça me ré-affiche ma liste celle-ci apparait avec des valeurs invisibles (la liste a le nombre de ligne qu'il y a dans la table mais c'est comme si les valeurs étaient écrites en blanc).
Les valeurs sont bien enregistrées dans la table correspondante ...
Je ne comprends pas vraiment ce qui se passe ...
Partager