Bonsoir.
Je n'arrive pas à annuler une modification dans une liste déroulante.
En clair, j'ai une liste déroulante (indépendante) nommée ("Liste") dans un formulaire indépendant. L'utilisateur choisit une ligne de la liste, et ce que je souhaiterais c'est, selon la valeur d'un autre contrôle (nommé "groupe") du formulaire , accepter ou refuser la modification de valeur dans la liste déroulante.
En lisant à gauche et à droite, j'ai pensé que ce qui suit était ce qu'il fallait faire :
Malheureusement, ça ne marche pas, la liste change à chaque fois de valeur. J'ai même essayé avec un simple textbox plutôt qu'une liste, et ça ne marche pas plus.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Private Sub Liste_BeforeUpdate(Cancel As Integer) If IsNull(Me.Groupe) Or IsEmpty(Me.Groupe) Or Me.Groupe = "" Then MsgBox "veuillez définir d'abord le groupe " Me!Liste.Undo Cancel = True End Sub
La seule chose que j'ai pu faire fonctionner c'est dans le cas d'un TextBox et non une liste, sur un évènement "Change" (et non BeforeUpdate) : Dans ce cas là, le Undo marchait et me réaffichait la "vieille" valeur...
Quelqu'un aurait une idée ce qui ne va pas ? Serait-ce parce que mon formulaire et mon contrôle ne sont pas liés directement à un enregistrement ?
Merci en tous les cas, pour un conseil...
Partager