Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

empecher la saisie de doublons

4 réponses
Avatar
William WEILL
Bonjour, je vous explique mon problème:

J'ai une table dans laquelle il y a plusieurs champs seulement je ne veux
pas que l interdiction de doublons prenne en compte qu un seul champ. Par
exemple, j'ai mon champs NOM ou il peut y avoir plusieurs homonymes, donc je
voudrai que l interdiction de doublons agisse simultanément sur le champ nom
+ code postal
Pleasssseeee HHHEELLLPPP

4 réponses

Avatar
J-Pierre
Bonjour William,

Peut-être quelque chose comme:
If isNull(DLookUp("unChamp","maTable","NOM='" & Me.Nom & "' AND CP = " & Me.CP)) Then
..........n'existe pas..............
Else
..........existe déjà..............
End If

Attention aux apostrophes qui délimitent le string NOM.

Autre possibilité, définir un index unique incluant le nom et le CP. Tu édites ta table et tu cliques sur le bouton Index.

J-Pierre

"William WEILL" a écrit dans le message de news:

Bonjour, je vous explique mon problème:

J'ai une table dans laquelle il y a plusieurs champs seulement je ne veux
pas que l interdiction de doublons prenne en compte qu un seul champ. Par
exemple, j'ai mon champs NOM ou il peut y avoir plusieurs homonymes, donc je
voudrai que l interdiction de doublons agisse simultanément sur le champ nom
+ code postal
Pleasssseeee HHHEELLLPPP


Avatar
William WEILL
Re bonjour, merci pour la rapidité des réponses, seulement un petit hic, je
debute sur access, et je n arrive pas apres l etape d avoir creer mon index a
editer la base pourriez vous tout me reexpliquer en détail s'il vous plait,
sans language SQL car la c est encore pire que du chinois pour moi.

Cordialement.
William


Bonjour William,

Peut-être quelque chose comme:
If isNull(DLookUp("unChamp","maTable","NOM='" & Me.Nom & "' AND CP = " & Me.CP)) Then
..........n'existe pas..............
Else
..........existe déjà..............
End If

Attention aux apostrophes qui délimitent le string NOM.

Autre possibilité, définir un index unique incluant le nom et le CP. Tu édites ta table et tu cliques sur le bouton Index.

J-Pierre

"William WEILL" a écrit dans le message de news:

Bonjour, je vous explique mon problème:

J'ai une table dans laquelle il y a plusieurs champs seulement je ne veux
pas que l interdiction de doublons prenne en compte qu un seul champ. Par
exemple, j'ai mon champs NOM ou il peut y avoir plusieurs homonymes, donc je
voudrai que l interdiction de doublons agisse simultanément sur le champ nom
+ code postal
Pleasssseeee HHHEELLLPPP







Avatar
J-Pierre
Bonjour,

La rapidité de la réponse, c'est d'abord une question de chance, combien de temps se passera-t-il avant qu'une personne connaissant
la réponse te lise ?

Bon, on y va tout doucement:

1-Tu édites ta table
2-Tu cliques sur le bouton Index
3-Dans la boîte de dialogue, tu fais défiler les index et tu vois les prochaines lignes libres. Maintenant, on va créer l'index
multichamp.
Dans la colonne Nom de l'index, tu donnes un nom, n'importe quoi pourvu qu'il soit unique, disons JP.
Dans la colonne Nom du champ qui est une liste déroulante, tu sélectionnes le premier champ de ton index, dans ton cas, NOM
Dans la même colonne Nom du champ, mais dans la ligne en dessous, tu sélectionnes le deuxième champ de ton index, dans ton cas CP
Tu sélectionnes la ligne Nom de l'index JP.
Dans la partie du bas de la boîte de dialogue, ligne Unique, tu mets à OUI (toujours une liste déroulante)
4-Tu fermes ta boîte de dialogue
5-Tu cliques sur le bouton Affichage pour passer en mode feuilles de données (affichage du contenu de ta table)
6-Access te dit qu'il doit enregistrer la table, réponds "Oui Monsieur".
7-Si tu as un message d'erreur, c'est que les données de ta table ne permettent pas de créer un index unique, tu as déjà des
doublons.

Juste une remarque, si tu as des Dubois à Lyon, il est normal d'avoir des doublons. Ton index multichamp peut comporter jusqu'à 10
champs, il faudrait au moins créer ton index avec NOM+PRENOM+CP

J-Pierre

"William WEILL" a écrit dans le message de news:

Re bonjour, merci pour la rapidité des réponses, seulement un petit hic, je
debute sur access, et je n arrive pas apres l etape d avoir creer mon index a
editer la base pourriez vous tout me reexpliquer en détail s'il vous plait,
sans language SQL car la c est encore pire que du chinois pour moi.

Cordialement.
William


Bonjour William,

Peut-être quelque chose comme:
If isNull(DLookUp("unChamp","maTable","NOM='" & Me.Nom & "' AND CP = " & Me.CP)) Then
..........n'existe pas..............
Else
..........existe déjà..............
End If

Attention aux apostrophes qui délimitent le string NOM.

Autre possibilité, définir un index unique incluant le nom et le CP. Tu édites ta table et tu cliques sur le bouton Index.

J-Pierre

"William WEILL" a écrit dans le message de news:

Bonjour, je vous explique mon problème:

J'ai une table dans laquelle il y a plusieurs champs seulement je ne veux
pas que l interdiction de doublons prenne en compte qu un seul champ. Par
exemple, j'ai mon champs NOM ou il peut y avoir plusieurs homonymes, donc je
voudrai que l interdiction de doublons agisse simultanément sur le champ nom
+ code postal
Pleasssseeee HHHEELLLPPP









Avatar
Tisane
Bonjour William,

Re bonjour, merci pour la rapidité des réponses, seulement un petit hic,
je
debute sur access, et je n arrive pas apres l etape d avoir creer mon
index a
editer la base pourriez vous tout me reexpliquer en détail s'il vous
plait,
sans language SQL car la c est encore pire que du chinois pour moi


Pour mettre en oeuvre la 2e proposition de Jean-Pierre, soit créer un index
sans doublon sur les 2 champs :
- ouvre ta table en mode création
- clique sur l'outil "Index" (ou menu Affichage | Index)
- dans la colonne "Nom de l'index", tape un nom (NomCP par exemple),
- dans la colonne "Nom du champ", sélectionne ton champ "Nom"
- sélectionne "Oui" dans la propriété "Unique" (en bas de la boîte de
dialogue)
- sur la ligne suivante, toujours dans la colonne "Nom du champ",
sélectionne le champ "CP"

Je crois que je n'ai rien oublié.

--
Tisane

Peut-être quelque chose comme:
If isNull(DLookUp("unChamp","maTable","NOM='" & Me.Nom & "' AND CP = " &
Me.CP)) Then
..........n'existe pas..............
Else
..........existe déjà..............
End If

Attention aux apostrophes qui délimitent le string NOM.

Autre possibilité, définir un index unique incluant le nom et le CP. Tu
édites ta table et tu cliques sur le bouton Index.

J-Pierre

"William WEILL" a écrit dans le
message de news:

Bonjour, je vous explique mon problème:

J'ai une table dans laquelle il y a plusieurs champs seulement je ne
veux
pas que l interdiction de doublons prenne en compte qu un seul champ.
Par
exemple, j'ai mon champs NOM ou il peut y avoir plusieurs homonymes,
donc je
voudrai que l interdiction de doublons agisse simultanément sur le
champ nom
+ code postal
Pleasssseeee HHHEELLLPPP