Relier automatiquement 2 champs

Fermé
arthurvox Messages postés 20 Date d'inscription samedi 30 novembre 2013 Statut Membre Dernière intervention 2 mai 2016 - 18 avril 2016 à 17:47
 castours - 21 avril 2016 à 23:29
Bonjour,

Complètement néophyte dans l'utilisation d'ACCESS, je suis confronté à un problème pour lequel votre aide et vos compétences me seront précieuses.

Dans un base de données, j'ai créé deux tables, chacune alimentée par son formulaire.

La première table, "MERCURIALE", comporte entre autres les champs [REFERENCE] et [PRODUIT].

La deuxième table, "MOUVEMENTS", comporte également les champs [REFERENCE] et [PRODUIT].


MON PROBLEME :
Dans le formulaire de la table "MOUVEMENTS", je souhaiterai que, lorsque je rendre une référence dans le champ [REFERENCE] de ce formulaire (référence correspondant à une référence et à un produit enregistrés dans la table "MERCURIALE"), le produit correspondant s'inscrive directement dans le champ [PRODUIT].

Si quelqu'un pouvait m'expliquer de façon détaillée la démarche à suivre pour obtenir ce résultat, cela me rendrait un immense service et me tirerait une énorme épine du pied.

Merci par avance de votre aide..?.
A voir également:

5 réponses

bonjour
il faut faire une relation un a plusieurs entre les 2 tables. Dans la table mercuriable créer une cle primaire avec un N°Auto. Je ne sais pas si Reference peut etre N° Auto. Sinon tu le creais par exemple N°ListMer puis dans la table mouvement tu creais un champ du meme nom mais tu le déclare en numerique.
Ensuite tu creais la relation un a plusieurs.
0
arthurvox Messages postés 20 Date d'inscription samedi 30 novembre 2013 Statut Membre Dernière intervention 2 mai 2016
19 avril 2016 à 00:23
Merci pour cette information qui me sera certainement très utile, mais qu'appelles-tu un lien "de 1 à plusieurs"? Comme tu le vois, je suis vraiment un béotien en la matière. J'ai regardé l'exemple mis en lien, mais j' ai vu qu'il y avait plusieurs relations entre plusieurs tables. J'ai effectivement un champ N° Auto en clef primaire dans la table MERCURIALE. Je dois donc créer ce champ N° Auto dans la table MOUVEMENTS en numérique ? OK ?
Mais ensuite, comment créer cette relation "de 1 à plusieurs" ? De quel champ de la table MERCURIALE doit-elle partir, et à quel(s) champ(s) de la table MOUVEMENTS doit-elle aboutir ? Quel champ de la table MOUVEMENTS doit être clef primaire ? Pour l'instant, c'est le champ REFERENCE qui est clef primaire dans cette table.

Les champs de la table MERCURIALE :
N° AUTO - clef primaire
FOURNISSEUR - Texte
REFERENCE - Numérique
PRODUIT - Texte
UNITE - Texte
PUHT - Monétaire
TVA - Numérique
PUTTC - Monétaire

Les champs de la table MOUVEMENTS :
JOUR - date
FOURNISSEUR - Texte
REFERENCE - Numérique - Clef Primaire
PRODUIT - Texte
ENTREE - Numérique
SORTIE - Numérique

Pour mémoire, mon problème et le suivant : Dans le formulaire de la table "MOUVEMENTS", je souhaiterai que, lorsque je rendre une référence dans le champ [REFERENCE] de ce formulaire (référence correspondant à une référence et à un produit enregistrés dans la table "MERCURIALE"), le produit correspondant s'inscrive directement dans le champ [PRODUIT] du formulaire MOUVEMENT.

Si tu pouvais m'en apprendre un peu plus sur la création de cette relation, ce serait vraiment formidable.

Encore un immense merci pour cette première réponse, en espérant que tu pourras la compléter rapidement.

Très cordialement...
0
castours > arthurvox Messages postés 20 Date d'inscription samedi 30 novembre 2013 Statut Membre Dernière intervention 2 mai 2016
19 avril 2016 à 09:55
http://www.cjoint.com/c/FDthNQuGJ3r
Bonjour
Ta base dans ce lien que j'ai créé
Vu les champs fournis, tu veux créer une gestion de produits avec stocks.
J'ai une base toute faite qui fait cela mais il faut l'adapter à tes besoins. La veux tu?
Pour la relation il te faut un champ N° auto clé primaire) et un champ declarer en numerique
Exemple
Table 1 N°List Déclaré en N° auto qui sera clé Clé primaire
Table 2 N°List Déclaré en numerique qui sera ta clé secondaire
Puis tu cherche creation relation
Tu y mets les 2 tables et tu clique sur le champs clé primaire en maintenant le bouton enfonce que tu fais glisser jus qu'au champ clé secondaire. La relation doit se faire .Ensuite tu coches les 3 cases
0
arthurvox Messages postés 20 Date d'inscription samedi 30 novembre 2013 Statut Membre Dernière intervention 2 mai 2016 > castours
19 avril 2016 à 13:24
Bonjour,
J'ai suivi la démarche que tu m'as indiquée, à savoir :
Dans la table MERCURIALE, le champ N° est de type N° automatique et est désigné comme clef primaire.

Dans la table MOUVEMENTS, j'ai créé un champ N° de type Numérique.
(Je n'ai pas mis de clef primaire dans cette table.

J'ai enregistrée les 2 tables
Dans l'onglet "Outils de Bases de données", j'ai cliqué sur RELATIONS puis j'ai affiché mes deux tables.

Dans la table MERCURIALE, j'ai cliqué sur N°, (clef primaire), et, tout en maintenant le bouton enfoncé, je suis venu sur le champ N° de la table MOUVEMENTS;

J'ai coché les 3 cases puis cliqué sur OK.

J'ai enregistré et fermé.

J'ai enregistré les 2 tables.

J'ai enregistré ma base de données et je l'ai fermée.

Je suis ensuite venu sur mon formulaire MOUVEMENT, mais lorsque je rentre une référence dans le champ correspondant,(référence correspondant à une référence et à un produit enregistrés dans la table "MERCURIALE"), le champ PRODUIT ne se remplit pas avec l'intitulé correspondant à cette référence.

????????????????????????
Ai-je oublié quelque chose ? Ai-je fait la bonne relation ?

En espérant que tu sauras me dire pourquoi cela ne fonctionne pas.
Cordialement...

PS : Je n'ai pas encore été voir le lien que tu m'as envoyé.
0
bonjour
un petit exemple dans ce lien
http://www.cjoint.com/c/FDstwV6wFxr
0
http://www.cjoint.com/c/FDtiH3oRvsr
bonjour
Dans ce lien une base de gestion de stock.
On se place comme revendeur de produits.
On achete puis on revend en établissant des factures
Maintenant tu adapte a tes besoins ou te sert de modele
0
http://www.cjoint.com/c/FDtnqSv0ewr
bonjour
Tu trouveras la base avec le formulaire.
Tu cliques sur la liste deroulante N°Lis, tu choisis un enregistrement tu cliques dessus et et les données s'inscrivent dans le champs concernés
Il y a quelques lignes de code VBA dans la liste deroulante
0
arthurvox Messages postés 20 Date d'inscription samedi 30 novembre 2013 Statut Membre Dernière intervention 2 mai 2016
19 avril 2016 à 18:34
Bonsoir,

Je dois être encore plus nul que ce que je pensais, mais je n'arrive pas au résultat escompté. Mais peut-être est-ce moi qui ai mal exposé mon problème.

En fait, j'ai un formulaire MERCURIALE qui s'ouvre automatiquement et sans que la fenêtre ACCES s'affiche à l'écran. Ce formulaire est indépendant et "fenêtre modale"
.Lorsque je rentre des donnés dessus, elles alimentent la table MERCURIALE.

A côté de ça, j'ai un autre formulaire (indépendant et modale) qui lui, lorsque j'y saisit des données, alimente la table MOUVEMENT.

Sur ce formulaire MOUVEMENT, j'ai uniquement les champs : [DATE]; [REFERENCE]; [PRODUIT]; [UNITE];[ENTREE]; [SORTIE].

Les champs [REFERENCE]; [PRODUIT]; [UNITE] sont également présent dans le formulaire MERCURIALE.

Je n'utilise le formulaire MOUVEMENTS que pour saisir des données relatives à des produits déjà enregistrés dans la table MERCURIALE grâce à son propre formulaire.

Chaque produit ayant sa propre référence, je souhaitais que, lorsque je veux saisir DANS LE FORMULAIRE MOUVEMENT une ENTREE du produit X (déjà enregistré dans la table MERCURIALE), dès que je rentre sa REFERENCE, les champs PRODUIT et UNITE affichent automatiquement le produit et l'unité correspondant à cette référence.

Je sais que c'est possible, mais j'avoue que je sèche lamentablement.

J'ai bien essayer de triturer les deux tables exemples que tu as mises en lien pour essayer de trouver ce que je cherche à obtenir, dans la toute petite base identique à la mienne, pas moyen. Dans l'autre, il y a bien trop de tables pour que je m'y retrouve.

Peux-tu venir à mon secours une dernière fois ?

Encore mille mercis pour ta patience et tes connaissances.

Très cordialement...
0
castours > arthurvox Messages postés 20 Date d'inscription samedi 30 novembre 2013 Statut Membre Dernière intervention 2 mai 2016
19 avril 2016 à 21:41
c'est ce que j'ai fait dans le dernier que j'ai envoyé
0
arthurvox Messages postés 20 Date d'inscription samedi 30 novembre 2013 Statut Membre Dernière intervention 2 mai 2016 > castours
19 avril 2016 à 23:37
Bonsoir,

Effectivement, mais je pensais qu'il était possible que les données PRODUITS et UNITE correspondant à une REFERENCE s'inscrivent automatiquement lorsque l'on renseignait le champ REFERENCE. Suis-je vraiment obligé d'avoir les deux champs NUMLIST dans mon formulaire ? N'y aurait il pas une ligne de commande ou de code qui ferait que l'entrée d'une référence appelle automatiquement le produit concerné et son unité ? Je te demande cela parce qu'avec plus de5 00 produits répertoriés dans la table MERCURIALE, passer par une liste d'enregistrements pour trouver le bon risque d'être fastidieux.
En fait, la "relation" que je voudrais établir en quelque sorte est du style:
REFERENCE = 1 seul PRODUIT = 1 seule UNITE (même si dans la table MERCURIALE plusieurs produits peuvent avoir une UNITE similaire)

Quel serait le schéma d'une telle relation ?

Quoiqu'il en soit, merci encore pour ta patience et ta compréhension à l'égard d'un ignare comme moi...

Cordialement...
0
castours > arthurvox Messages postés 20 Date d'inscription samedi 30 novembre 2013 Statut Membre Dernière intervention 2 mai 2016
20 avril 2016 à 07:43
Bonjour
On peut changer la relation.
A savoir si reference est unique mais ne sera pas automatique
Est elle composée uniquement de chiffre?
On peut essayer de faire un formulaire de recherche sur reference
0

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

Posez votre question
bonjour
http://www.cjoint.com/c/FDunykoWycr
Toujours la base exemple modifiée avec un formulaire de recherche a partir d'une reference
Dans la liste deroulante tu peux commencer a mettre quelques chiffre et cela te rapprochera de la réféfrence
La liste déroulante est faite sur 3 champs , reference, produit, unité.
En espérant que mon aide vous sera utile
0
arthurvox Messages postés 20 Date d'inscription samedi 30 novembre 2013 Statut Membre Dernière intervention 2 mai 2016
20 avril 2016 à 17:57
https://www.cjoint.com/c/FDupuHqwye4
Re-bonjour,
Décidément, on ne va pas y arriver. Merci de votre acharnement à vouloir m'aider, mais il y a toujours un problème.

Dans le formulaire "choix de référence, si je rentre une référence manuellement, ou si je vais la chercher dans la liste déroulante, cela ne m'inscrit pas automatiquement le FOURNISSEUR et le nom du produit dans les champs correspondant du formulaire. Or, c'est ce que je voudrais réussir à obtenir.

J'ai mis ma base de donnée sur le lien ci-dessus.

En fait, ma procédure est la suivante :

1) Je reçois un nouveau produit (jamais enregistré auparavant), je le rentre dans la table MERCURIALE à l'aide du formulaire autonome MERCURIALE.

2) Lorsque je sors un produit de ma réserve, j'enregistre la sortie dans la table ENTRÉES ET SORTIES (table MOUVEMENTS dans mes précédents messages) par le biais du formulaire autonome ENTRÉES ET SORTIES. de même, lorsque je me réapprovisionne de ce produit, j'enregistre l'entrée de la même façon.

C'est sur ce formulaire que j'aurais souhaité que la saisie d'une REFERENCE entraîne la saisie automatique du NOM DU PRODUIT et du FOURNISSEUR..

A cela, il y a deux raisons : 1) Cela évite d'avoir à tout saisir manuellement. 2) Cela peut permettre d'éviter des erreurs de saisie ( dans la REFERENCE ou une faute d’orthographe dans le nom du produit...).

Maintenant, si ce n'est pas possible, tant pis...Je saisirai ces infos manuellement....mais je risque encore d'avoir besoin de vos lumières pour un problème lié à un ETAT que je vais devoir créer.

En attendant, encore merci de votre patience et de votre compréhension, et si vos conseils ne m'ont pas vraiment aidé (pour l'instant) sur ce problème précis, ils m'ont néanmoins permis d'en apprendre un peu plus sur les "mystères" d'ACCESS, et je crois que je vais très très vite me plonger dans la lecture d'ACCESS POUR LES NULS, histoire d'être juste un peu moins ignorant sur le sujet...

Très cordialement...
0
castours > arthurvox Messages postés 20 Date d'inscription samedi 30 novembre 2013 Statut Membre Dernière intervention 2 mai 2016
20 avril 2016 à 18:46
Bonjour
Bien reçu mais ne peux pas lire la base.
Avant de la mettre dans un lien il faut qu'elle soit compressée en zip ou rar
En effet il sera plus facile de voir ou tu coinces
0
arthurvox Messages postés 20 Date d'inscription samedi 30 novembre 2013 Statut Membre Dernière intervention 2 mai 2016 > castours
20 avril 2016 à 19:51
Voici le lien pour la base compressée.
http://www.cjoint.com/c/FDurWdifAH4
Encore merci de de ton aide.Je ne pensais pas que ce serait si difficile à faire, mais c'est vrai que je ne maitrise absolument pas toutes les possibilités et subtilités d'ACCESS...
Mais je compte bien m'y mettre sérieusement...
0
castours > arthurvox Messages postés 20 Date d'inscription samedi 30 novembre 2013 Statut Membre Dernière intervention 2 mai 2016
20 avril 2016 à 21:54
bonsoir
bien reçu la base mais certaine fonctions sont in compatible avec access 2007.
je n'ai pas access 2010 mais 2007 et 2003
peux tu me convertir ta base en 2007
0
arthurvox Messages postés 20 Date d'inscription samedi 30 novembre 2013 Statut Membre Dernière intervention 2 mai 2016 > castours
20 avril 2016 à 22:39
Bonsoir,
Ce serait avec plaisir, mais je ne vois pas comment. Je n'ai aucune option (ou je ne sais pas pas où elles sont) qui me permettent de changer le format d'enregistrement de accesdb en mdb. Si tu as une solution...
Cordialement
0