Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > IHM
IHM Ce forum est dédié aux questions relatives à la création de formulaires et d'états, avec ou sans code VBA, et macros.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/04/2011, 15h10   #1
Membre régulier
 
Avatar de 5GPCISAS1
 
Inscription : novembre 2007
Messages : 85
Détails du profil
Informations personnelles :
Âge : 52

Informations forums :
Inscription : novembre 2007
Messages : 85
Points : 78
Points : 78
Par défaut Msg d'erreur dans un formulaire pour un doublon

Bonjour,

Dans un formulaire d'encodage du personnel (F_Pers), j'ai mis comme clef primaire le [Matricule] qui est unique pour chaque personne.
Lorsque j'en introduit un nouveau, j'aimerais que le système m'indique si celui-ci existe déjà car je ne peux pas introduire deux fois le même et ensuite qu'il annule mon encodage erroné.
Pour ce faire, j'ai mis sur la propriété "before update" du champ [Matricule] le code suivant:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
With CodeContextObject
        If IsNull([MATRICULE]) Then
            Exit Sub
        End If
        If [MATRICULE] = Forms![F_Pers]![MATRICULE] Then
            MsgBox "Ce Matricule existe déjà !", vbCritical, "Erreur de Matricule"
            DoCmd.CancelEvent
        End If
    End With
 
    Me.Undo
Cela fonctionne très bien si le [Matricule] que j'introduis existe déjà, mais lorsque j'en introduis un nouveau, le système me dit qu'il existe déjà aussi.

Après analyse, je comprend que pour lui, si mon nouveau [Matricule] est introduit, forcément, il se trouve dans la Table (T_Pers) et donc il applique aussi la fonction.

Je n'arrrive pas à trouver la formulation exacte.

Merci d'avance
5GPCISAS1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/04/2011, 15h32   #2
Membre Expert
 
Homme Robert JAMIN
Retraité
Inscription : juillet 2009
Messages : 1 223
Détails du profil
Informations personnelles :
Nom : Homme Robert JAMIN
Âge : 73
Localisation : Belgique

Informations professionnelles :
Activité : Retraité
Secteur : Enseignement

Informations forums :
Inscription : juillet 2009
Messages : 1 223
Points : 2 022
Points : 2 022
Bonjour,
Une clé primaire est par définition unique, donc si vous intoduisez un matricule qui existe déjà pas besoin de faire quoi que ce soit il sera refusé par Access sous forme d'un avertissement Risque de doublon donc vous devrez le changer pour que l'enregistrement soit accepté.
__________________
Cordialement.

RJ
rjamin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/04/2011, 13h48   #3
Membre régulier
 
Avatar de 5GPCISAS1
 
Inscription : novembre 2007
Messages : 85
Détails du profil
Informations personnelles :
Âge : 52

Informations forums :
Inscription : novembre 2007
Messages : 85
Points : 78
Points : 78
Effectivement, celà m'avais échappé.
Je m'y prendrais donc autrement.

merci quand même pour la réponse.

Bien à vous
5GPCISAS1 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h55.


 
 
 
 
Partenaires

Hébergement Web