amikove
Messages postés42Date d'inscriptionsamedi 11 novembre 2006StatutMembreDernière intervention15 juin 2008
-
20 mai 2007 à 23:21
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 2007
-
23 mai 2007 à 14:38
bonsoir tout le monde
je travail sous Access, et j'ai un tout ptit problem
j'ai deux combobox... et je veux faire une liaison entre eux, au changement du premier, je crois qu'un pti exemple va expliquer ce que je veux
on a par exemple 2 combobox
le 1ér pour les pays
et le 2éme pour les villes
qund on choisie un pays....le 2éme s'actualise et nous donne les villes du pays choisi
j'esper que j'ai etait bien clair pour poser mon problém
éééé merci d'avance
tbbuim1
Messages postés940Date d'inscriptionjeudi 20 février 2003StatutMembreDernière intervention 3 février 20119 21 mai 2007 à 13:52
Amikove, "je vous ai compris"... lol
Pas comme certains qui n'ont jamais utilisé Access et qui essayes "d'aider" en répondant à côté et en polluant ton topic... Bref, voilà LA solution.
Bien sur, tous les chemins mènent à Rome et il y a un million de façon de faire ce que tu veux, mais la plus simple à ton niveau et à mon sens, il me semble que c'est cette dernière:
Dans les propriétés de ton combobox des PAYS (on va l'appeler cbPays), tu vas sur le champ Origine Source, tu mets Table/Requête, et dans contenu, tu passes la table Pays où une requête qui a comme premier champ, la clé primaire qui se trouve dans ta table Pays, en l'occurence "IdPays" d'après ce que j'ai pu lire sur la page 1.
Ensuite tu crées ton Combobox Villes (cbVilles) et tu fais la même chose sauf qu'ici tu vas créer une requête avec l'assistant dans laquelle tu vas passer en critère, l'IdPays que te retourne cbPays qd tu fais un choix sur le formulaire.
T'as requête va s'écrire sous cette forme:
SELECT *
FROM Pays LEFT JOIN Villes ON Pays.IdPays = Villes.[IdPays]
WHERE (((Villes.[IdPays])=[Forms]![NomDeTonFormulaire].[cbPays]));
Tu sauves la requête et tu lui donnes un nom genre rq_liste_villes
Ensuite dans les propriétés de ton cbVilles
origine: table/requêtes
contenu: rq_liste_villes
Maintenant dernière chose à faire, tu vas dans les propriétés du CbPays
et tu ajoutes un code dans la propriétés Après MAJ: Procédure évènementielle...
et dans le code tu relances ta requête, ce qui aura pour effet de rafraichir ta combobox en fonction du choix du pays:
Private Sub cbPays_AfterUpdate()
Me.cbVilles.Requery
End Sub
Valà comme dirait Jack :) testé et approuvé. @+
amikove
Messages postés42Date d'inscriptionsamedi 11 novembre 2006StatutMembreDernière intervention15 juin 2008 21 mai 2007 à 00:21
merci pour ton aide
dans la table ville que j'ai donner comme exemple...j'ai les champs IdVille, NomVille,IdPays
et une table pays : IdPays, NomPays
le probleme c'est que c'a marche pas
mon changement sur la requete a donné :(j'ai lié d'abor les codes...puis le text choisi)
Dim req As Stringreq " SELECT DISTINCT NomVille from VILLE where (VILLE.IdPays PAYS.IdPays) and ( PAYS.NomPays = '" & Me![ComboPays]
amikove
Messages postés42Date d'inscriptionsamedi 11 novembre 2006StatutMembreDernière intervention15 juin 2008 21 mai 2007 à 01:50
oui oui j'ai verifier...et je travail sur ces tales depuis 1 mois, et j'ai fait plusieurs formulaire, l'erreure ne vien pas de la table
je colle le code au changement du combobox du pays
mais rien
vraiment merci pour le temps que tu consacre pour moi mntn
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 21 mai 2007 à 01:57
fais le dans l' evenement Click et pas dans Change
ensuite tu récupères le contenu.Puis tu vide cmbVille et tu le remplis de nouveaux
par un recordset lié au resultat de la requete.
A part ça je ne vois pas d' ou ça peut provenir. D' habitude ça marche.
amikove
Messages postés42Date d'inscriptionsamedi 11 novembre 2006StatutMembreDernière intervention15 juin 2008 21 mai 2007 à 02:06
c'est juste que j'ai pas eu une formation sur Access , c'est seulment pour le stage que je fais mntn, je suis obligé de travailler avec .
alors j'ai pas beaucoup des notions sur Access, et j'ai vraiment besoin de cette action ,
j'ai tout essayer...tjr rien
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 21 mai 2007 à 02:12
désolé pour ce soir...
Penses à reformuer ta question dans un nouveau topic
ou tu exposeras ton problème avec le max de détails.
Si je passe plutard , je verrais ce que je peux faire.
amikove
Messages postés42Date d'inscriptionsamedi 11 novembre 2006StatutMembreDernière intervention15 juin 2008 21 mai 2007 à 02:19
pour la reformulation de la qst...je sais vraiment pas dire apar ce que j'ai ecri au debut...par ce que l'exemple et trop parfait de ce que je veux
et en ce qui concerne ou ce trouve le probleme, moi aussi je croi que c'a vien du code
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 21 mai 2007 à 15:15
Salut,
@tbbuim1
Moi aussi je vous ai compris"... lol
Et pour les "Pas comme certains qui n'ont jamais utilisé Access et qui essayes "d'aider" en répondant à côté et en polluant ton topic"
En fait je ne suis qu' un ...Et comme dirait Rolling : Qui ne vous connait pas vous perd...
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 23 mai 2007 à 14:38
Salut tout le monde,
Tant mieux pour notre ami Amikove si ça marche pour lui
d' une façon ou d' une autre, mais j' avoue que je ne comprend
pas sa démarche.
D' abord parce qu' il n' a pas été question d' un combo lié.
Et si liaison il y' a elle doit être sur IdVille et non sur NomVille.
Mais s' il veut juste afficher (question facilité de lecture pour un utilisateur
que NomVille serait plus facil pour lui que IdVille), pas la peine d' avoir la requête
dans la Collection QueryDef, il suffira pour lui, au moment du Click sur cbPays
d' ouvir un recordset sur l' expression et de réi,itialise et remplir cbVille avec Additem.
Mais bon chacun son choix.