éviter les doublons dans access

Fermé
nini076 - 31 janv. 2008 à 11:35
 Azz - 1 janv. 2011 à 17:55
Bonjour,

J'ai installé le logiciel access dont l'objectif est de créer une base de données sans doublons. Pour cela, j'ai inséré deux clés primaires: une sur le prénom et une sur le nom. De cette manière, access m'indique quand je saisis deux fois les même données.

Toutefois, je rencontre un problème: je dois obligatoirement saisir une donnée dans des deux cellules; or je ne connais pas toujours le prénom. Pour le moment, je mets un point dans cette cellule mais ce n'est pas pratique quand j'ai plusieurs personnes qui possèdent le même nom. Et pour le mode étiquette ça pose problème aussi.

Connaissez vous un moyen pour résoudre ce problème?

Merci d'avance.
A voir également:

8 réponses

laetitia02 Messages postés 424 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 12 mars 2009 129
31 janv. 2008 à 14:12
si tu ajoute une personne a partir d un formulaire, tu peux créer un code dans celui si avec une requete qui permettra de chercher le nom et le prenom de la personne, etque si celle si existe déjà, un message d erreur d ajout s affiche indiquant que la personne et déjà enregistrer
si j ai pas été clair n hésite pas a me le dire
2
laetitia02 Messages postés 424 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 12 mars 2009 129
31 janv. 2008 à 15:03
tu met un bouton valider dans ton formulaire ainsi tu saisie toute les données sur la personne et il faut cliquer sur valider pour inserer la personne dans la liste donc tu créer un evenement sur clic pour ton bouton et la tu fais ta requete en vb soit:
dim req as string
dim rs as recordset
dim mabase as database
set mabase = currentdb()
req="select nompersonne, prenom_personne from personne where nompersonne='" & me.nom & "' and prenom_personne='" & me.prenom &"'"
set rs=mabase.openrecordset(req)
if rs.eof then
req="insert into personne (nompersonne, prenom_personne) values('" & me.nompersonne & "','" & me.prenom_personne & "')"
docmd.runsql(req)
then
msgbox ("la personne existe déjà dans la base impossible de l 'ajouter")
end if

voili voilou
1
laetitia02 Messages postés 424 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 12 mars 2009 129
31 janv. 2008 à 11:37
bonjourattribut un numero automatique a chaque personne et tu met ce numero en clé primaire
0
CHABIDAL Messages postés 1 Date d'inscription jeudi 31 janvier 2008 Statut Membre Dernière intervention 31 janvier 2008
31 janv. 2008 à 11:45
vous pouvez redefinir une autre clé primaire (numero automatique par exemple) et le nom et prénom peuvent être deux colonnes simples
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
rebonjour,
merci pour votre réponse.
c'est ce que j'hésitais à faire, de mettre la clé primaire sur un numéro automatique. mais le souci c'est que au moment où je vais vouloir saisir une personne, access va attribuer un nouveau numéro pour cette nouvelle saisie et ce même si la personne existe déjà (sauf qu'il attribuera un autre numéro). or, j'aurai voulu éviter ce problème
0
j'ai à peu près compris la démarche mais je ne vois pas trop comment faire.
il faudrait que j'ajoute un code à mon formulaire existant et que avant de saisir une nouvelle personne, je fasse une requête pour savoir si cette personne est déjà saisie. mais quelle est la formule à saisir pour faire la requête.
par contre, j'ai déjà saisi plus de 400 personnes, j'espère que ca ne changera rien dans mon formulaire
0
Désolé mais je ne pratique pas access depuis longtemps et je n'ai pas compris ton message.
si je crée un bouton "valider", il faut le relier à la requête pour que systématiquement il s'interrogeà savoir si la personne existe déjà.
je ne vois pas comment m'y prendre pour réaliser ça.
0
Bonjour à toutes et tous,
J'ai eu à peux près le même problème, et je ne l'ai pas encore résolu. Mais je vais essayer de l'expliquer à ma façon.
Imaginons une cellule dont le type de donnée est "Num", et qu'on essaye de saisir dessus un nom, qui est en fait un type "Texte", Access nous en empêche automatiquement, car, il faut mettre un chiffre.
Pour ma part, je suis entrain de créer une base de donnée pour gérer mes dépenses, un des tableaux comporte la liste des articles, pour les utiliser ailleurs comme liste déroulente ; seulement, je ne voudrais pas écrire deux fois le même article, et je voudrais qu'access m'en empêche si j'essaye de le faire.
Voilà mesdames & messieurs, est-ce possible ?
Merci pour votre précieuse aide.
0