éviter les doublons dans access

nini076 -  
 Azz -
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.
Configuration: Windows XP
Internet Explorer 6.0

8 réponses

  1. laetitia02 Messages postés 428 Statut Membre 130
     
    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
  2. laetitia02 Messages postés 428 Statut Membre 130
     
    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
  3. laetitia02 Messages postés 428 Statut Membre 130
     
    bonjourattribut un numero automatique a chaque personne et tu met ce numero en clé primaire
    0
  4. CHABIDAL Messages postés 1 Statut Membre
     
    vous pouvez redefinir une autre clé primaire (numero automatique par exemple) et le nom et prénom peuvent être deux colonnes simples
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. nini076
     
    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
  7. nini076
     
    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
  8. nini076
     
    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
  9. Azz
     
    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