J'ai donc un formulaire de saisie en mode entrée de données lié directement à une table, l'utilisateur est donc amené à saisir un nouvel enregistrement
un des champs à saisir est unique (Indexé : Oui - Sans doublons)
Lorsque l'utilisateur saisit un enregistrement avec une valeur en doublon sur ce champ, j'ai donc un message qui empêche de valider l'enregistrement, rien de plus normal
Message du genre
Modifications non effectuées: risque de doublons...
La question : est-il possible d'intercepter ce message d'erreur pour le substituer par un message plus parlant pour l'utilisateur, sans pour autant passer par un formulaire complètement déconnecté de la table et devoir tout gérer en VBA ?
Re : Access 2003 - Erreur d'unicité d'un champ dans un formulaire
Bonjour
Bise à toi Tototiti
Sauf erreur de ma part, le message se fait au moment de l'ajout de l'enregistrement dans la table.
Donc on peut capturer l'événement "avant insertion", via une requête tester si la valeur existe (on doit même pouvoir associer la requête à un champ masqué pour ne pas tout faire en VBA) et envoyer le msg qui va bien.
Re : Access 2003 - Erreur d'unicité d'un champ dans un formulaire
Re,
Bon, j'ai eu une réponse sur l'autre forum, c'est l'évènement Form_error qui permet de gérer ça
Merci à ceux qui m'ont lu
Bing : Merci chris, la solution BeforeInsert est bien aussi, c'est une autre façon de voir les choses, analyser pour éviter les erreurs ou traiter les erreurs
Merci à toi et bises
Re : Access 2003 - Erreur d'unicité d'un champ dans un formulaire
Bonsoir tototiti, chris et le forum,
A placer dans votre formulaire
Code:
Private Sub Form_Error(DataErr As Integer, Response As Integer)
If DataErr = 3022 Then
MsgBox "erreur de doublon"
Response = acDataErrContinue
End If
End Sub
Voilà ce que j'ai trouvé pour vous aider à mon tour.