Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
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 21/10/2011, 19h15   #1
Invité de passage
 
Inscription : août 2002
Messages : 20
Détails du profil
Informations forums :
Inscription : août 2002
Messages : 20
Points : 2
Points : 2
Par défaut Code postal selon ville = impossible

Bonjour,

Je bute sur un sujet qui a été abordé maintes fois sur ce forum et pourtant après avoir lu presque tous les fils, j'ai honte de dire que je bloque lamentablement.
Je débute et malgré mes efforts, je me rends compte que mes lacunes sont immenses. J'ai lu plein de tutoriaux comme le tuto de Jean-Philippe Ambrosino mais je ne vois pas comment les adapter particulièrement à mon projet.

J'explique :

--------------------------------------------
TABLES
J'ai 3 tables "Patients", "Adresses" et "CpVille".
La table "Patients":
- IdPatient : Numéro auto
- Nom : Texte
- Prenom : Texte

La table "Adresses":

- IdAdresse : Numéro auto
- Adresse : Texte
- CodePostal : Texte
- Ville : Texte
- IdPatient : Numérique

La table "cpVille":

- IdCpVille : Numéro auto
- Codepostal : Texte
- Ville : Texte
--------------------------------------------
RELATIONS
La table "Patients" est reliée à la table "Adresses" par l'IdPatient.
La table "CpVille" est reliée à la table "Adresses" sur deux champs :
--------IdCpville de CpVille est relié à "CodePostal" de la table "Adresses"
et -----IdCpville de CpVille est relié à "Ville" de la table "Adresses"
Le but étant d'enregistrer les données obtenues dans les champs correspondants de la table "adresses"

--------------------------------------------
FORMULAIRE
Le formulaire principal "PATIENTS" est basé sur la table "Patients" et comprend un sous-formulaire "Adresses" basée sur la table du même nom avec deux combobox "CodePostal" et "Ville" nourris respectivement par la table CpVille (CodePostal, Ville).
--------------------------------------------

1 - Je souhaiterais obtenir le code postal correspondant selon la ville choisie si l'utilisateur tape la ville en premier et inversement la ville correspondante si l'utilisateur tape le code postal en premier.
J'ai bien compris qu'une ville pouvait correspondre à plusieurs codes postaux et inversement qu'un code postal pouvait correspondre à plusieurs villes.
J'ai permis dans le code de rajouter des codes postaux ou des villes inexistantes mais le code postal ne se lie pas à la ville et inversement.
2 - Comment recueillir le code postal rajouté correctement lié à la ville correspondante rajoutée ?

Pourriez-vous m'aider ?
je vous remercie d'avance.
Cordialement.
macakou99 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/10/2011, 15h00   #2
Membre actif
 
Avatar de robyseb
 
Homme Sébastien
Développeur indépendant
Inscription : juillet 2011
Messages : 178
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Localisation : Canada

Informations professionnelles :
Activité : Développeur indépendant

Informations forums :
Inscription : juillet 2011
Messages : 178
Points : 193
Points : 193
Pourquoi ne met tu pas le code postal dans la même table que adresse dans un autre champ ?
robyseb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/10/2011, 15h32   #3
Rédacteur/Modérateur
 
Avatar de Domi2
 
Homme
Inscription : juin 2006
Messages : 6 222
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 52
Localisation : Suisse

Informations professionnelles :
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : juin 2006
Messages : 6 222
Points : 9 936
Points : 9 936
Envoyer un message via Skype™ à Domi2
Bonjour,

Tout d'abord, est-il correct qu'un patient puisse avoir plusieurs adresses (c'est bien sûr un cas de figure qui peut se présenter) ?

Ensuite, est-ce que tu as la notion de n° Insee dans ta table "cpVille" ?
__________________
Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

Ici, on ne perd pas de temps ! On en passe...


Access : créer des codes-barres 128 en VBA
Access : les commandes intégrées des menus

Ce message (ou un autre) vous a aidé ? Votez pour lui avec
Domi2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/10/2011, 17h02   #4
Invité de passage
 
Inscription : août 2002
Messages : 20
Détails du profil
Informations forums :
Inscription : août 2002
Messages : 20
Points : 2
Points : 2
Bonjour et merci de vos réponses.
Citation:
Pourquoi ne met tu pas le code postal dans la même table que adresse dans un autre champ ?
Parce qu'après avoir lu le tutoriel de SqlPro, sauf erreur de ma part, dans la modélisation de la base, il préconise l'emploi de tables (avec très peu de champs) liées entre elles, pour accélérer de manière très notable le chargement et l'accès aux données.
Une table "CodePostal", "Ville" complète comprend 40 000 enregistrements.
Citation:
Tout d'abord, est-il correct qu'un patient puisse avoir plusieurs adresses (c'est bien sûr un cas de figure qui peut se présenter) ?
Ensuite, est-ce que tu as la notion de n° Insee dans ta table "cpVille" ?
Oui, c'est le cas même si ce n'est pas la majorité.
Certaines personnes âgées vivent 6 mois dans un endroit et 6 mois dans un autre.
La table CpVille peut comprendre ce champ mais je l'avais retiré pour ne pas l'alourdir.
Merci, je continue à chercher.
macakou99 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2011, 07h07   #5
Membre actif
 
Avatar de robyseb
 
Homme Sébastien
Développeur indépendant
Inscription : juillet 2011
Messages : 178
Détails du profil
Informations personnelles :
Nom : Homme Sébastien
Localisation : Canada

Informations professionnelles :
Activité : Développeur indépendant

Informations forums :
Inscription : juillet 2011
Messages : 178
Points : 193
Points : 193
Salut personnellement je suis certain que de tenter de mettre un code postal selon une ville est irrationnel puisque normalement il est selon l’adresse, il peut y avoir énormément de code postaux dans une ville. le fait de rajouter un champ dans une table ne devrait pas causer un soucis au point d'affecter le temps de l'opération. Les ordinateurs d'aujourd'hui sont assez puissant donc à toi de voir ....
__________________
Parfois il faut faire le tour d'une roche 10 fois avant de s'apercevoir quelle est ronde.
  • Si vous trouvé mon post intéressant, n'oubliez pas de voter coté inférieur droit du message. Merci
  • Si votre Post est indiquez le....
robyseb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2011, 08h56   #6
Rédacteur/Modérateur
 
Avatar de Domi2
 
Homme
Inscription : juin 2006
Messages : 6 222
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 52
Localisation : Suisse

Informations professionnelles :
Secteur : Administration - Collectivité locale

Informations forums :
Inscription : juin 2006
Messages : 6 222
Points : 9 936
Points : 9 936
Envoyer un message via Skype™ à Domi2
Bonjour,

Ca ne répond pas directement à ta question, mais ton modèle relationnel n'est pas correct.

TABLES

La table "Patients":
- IdPatient : Numéro auto
- Nom : Texte
- Prenom : Texte

La table "Adresses":
- IdAdresse : Numéro auto
- Adresse : Texte
- AdresseNoInsee : Texte
- IdPatient : Numérique

La table "cpVille":
- NoInsee : Texte
- CodePostal : Texte
- Ville : Texte


RELATIONS

La table "Patients" est reliée à la table "Adresses" par l'IdPatient.
La table "Adresses" est reliée à la table "cpVille" par les champs AdresseNoInsee et NoInsee.

Domi2
__________________
Vous avez des montres, nous avons le temps ! (citation attribuée à L.-S. Senghor)

Ici, on ne perd pas de temps ! On en passe...


Access : créer des codes-barres 128 en VBA
Access : les commandes intégrées des menus

Ce message (ou un autre) vous a aidé ? Votez pour lui avec
Domi2 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2011, 12h10   #7
Invité de passage
 
Inscription : août 2002
Messages : 20
Détails du profil
Informations forums :
Inscription : août 2002
Messages : 20
Points : 2
Points : 2
Je vous remercie car grâce à vos conseils, j'ai refondu mes tables et cela marche.
J'ai fusionné la table "Patients" avec la table "Adresses".
Je vais chercher les infos "Code Postal" et "Ville" dans la table "CpVille".
J'ai ajouté le code suivant :

Code :
1
2
3
4
Me.Ville = ""
Me.Cp.Requery
Me.Cp.SetFocus
Me.Cp.Dropdown
Je peux désormais trier selon le code postal ou choisir de trier selon la ville.
Merci à robyseb et à, Domi2.
Grâce à vous, j'ai compris mes erreurs.
Ce forum est fantastique et l'entraide y est remarquable.
macakou99 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 07h44.


 
 
 
 
Partenaires

Hébergement Web