Bonjour tout le monde et merci de m'aider
Apres avoir cherché dans la FAQ, je n'ai trouvé de réponse à ma question, qui pourtant je pense, doit etre simple...Mais je n'y arrive pas.
J'ai un formulaire d'ajout d'institution: "Add_Institution" ,basé sur la table "institutions" sur lequel se trouve différents champs texte dont un qui est appellé "Institution_Acronym".
Je voudrais qu'à la sortie de ce champ, si l'utilisateur lui a attribué un acronyme existant deja dans la table "Institutions", un message d'avertissement aparaisse et que ce champ redevienne null.
bref, je voudrais m'assurer que l'utilisateur ne rentre pas un acronyme existant deja.
Voila ce que j'ai pour le moment:
1 2 3 4 5 6 7 8 9 10
| Private Sub Institution_Acronym_BeforeUpdate(Cancel As Integer)
' Si l'acronyme de l'institution existe deja
If (Not IsNull(DLookup("[Institution_Acronym]", "Institutions", "[Institution_Acronym] = '" & Me.Institution_Acronym.Text & "'"))) Then
Me!Institution_Acronym.Undo
End If
End Sub |
Cela fonctionne mais ne remet pas le textbox à blanc.
Et si j'ajoute ce code:
Me!Institution_Acronym = ""
apres le undo, une erreur apparait me signifiant que le champ ne peut valoir une chaine vide ( ce qui est logique vu que c est précisé dans les propriétés de la table)
Quelqu'un aurait une solution simple pour avertir l'utilisateur lorsqu'il rentre un acronyme deja existant et qu'ensuite ce champ redevienne sans valeur (comme avant la modification) ?
(en fait une sorte de
DoCmd.DoMenuItem acFormBar, acEditMenu, acUndo, , acMenuVer70
mais juste pour un champ)
Merci à tous!
Partager