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

rafraichir les donnees d'une zone de liste

23 réponses
Avatar
ALF
Bonjour,
comment peut on rafraichir les donnees d une zone de liste,lorsque plusieurs
valeurs sont selectionnes sur une autre zone de liste. ces 2 zones de liste
etant sur le meme formulaire.
sur la 2eme zone de liste,un filtre (representant les choix de la premiere
zone de liste) est appliqué sur donnes/contenu mais je n'arrive pas a
raffraichir les donnees de cette 2eme zone de liste...je voudrais placer la
procedure suivante:
Private Sub lstpays_Change
Me.lstVille.Requery
End Sub
Mais je ne sais pas ou la placer!!!
Merci de votre soutien
--
ALF

10 réponses

1 2 3
Avatar
Demba Coulibaly
Bonjour ALF,

tu peux placer ta ligne

Me.lstVille.Requery

dans une procédure événementielle de la propriété "Après MAJ"

merci.


Bonjour,
comment peut on rafraichir les donnees d une zone de liste,lorsque plusieurs
valeurs sont selectionnes sur une autre zone de liste. ces 2 zones de liste
etant sur le meme formulaire.
sur la 2eme zone de liste,un filtre (representant les choix de la premiere
zone de liste) est appliqué sur donnes/contenu mais je n'arrive pas a
raffraichir les donnees de cette 2eme zone de liste...je voudrais placer la
procedure suivante:
Private Sub lstpays_Change
Me.lstVille.Requery
End Sub
Mais je ne sais pas ou la placer!!!
Merci de votre soutien
--
ALF


Avatar
ALF
Bonjour,
cela ne retourne toujours pas de valeurs...
je vais essayer de m'expliquer plus en detail:
sur un meme formulaire j'ai 2 zones de liste independantes avec
multiselection de type simple.
je voudrais que lorsque j'ai selectionné plusieurs valeurs sur la 1ere zone
de liste,cela impacte directement une selection automatique sur la 2ieme zone
de liste;en sachant que chaque zone de liste est issue d une table
differente: ainsi la table 2 contiend les ecoles et la table 1 contiend les
villes. il peut y avoir plusieurs ecoles dans une meme ville..par ex si je
selectionne AVIGNON sur la liste 1 je dois avoir selectionnés automatiquement
"ecoleX avignon" ET "ecole Y avignon" sur la liste 2 car 2 ecoles dependent
d'AVIGNON dans cet exemple...
Comment dois je proceder pour obtenir ce resultat?? créations de
filtre,joins eventuels entre tables,procedure particuliere???
Merci de m'eclairer a ce sujet...
comment dois je proceder pour
ALF



Bonjour ALF,

tu peux placer ta ligne

Me.lstVille.Requery

dans une procédure événementielle de la propriété "Après MAJ"

merci.


Bonjour,
comment peut on rafraichir les donnees d une zone de liste,lorsque plusieurs
valeurs sont selectionnes sur une autre zone de liste. ces 2 zones de liste
etant sur le meme formulaire.
sur la 2eme zone de liste,un filtre (representant les choix de la premiere
zone de liste) est appliqué sur donnes/contenu mais je n'arrive pas a
raffraichir les donnees de cette 2eme zone de liste...je voudrais placer la
procedure suivante:
Private Sub lstpays_Change
Me.lstVille.Requery
End Sub
Mais je ne sais pas ou la placer!!!
Merci de votre soutien
--
ALF




Avatar
3stone
Salut,

"ALF"
| sur un meme formulaire j'ai 2 zones de liste independantes avec
| multiselection de type simple.
| je voudrais que lorsque j'ai selectionné plusieurs valeurs sur la 1ere zone
| de liste,cela impacte directement une selection automatique sur la 2ieme zone
| de liste;en sachant que chaque zone de liste est issue d une table
| differente: ainsi la table 2 contiend les ecoles et la table 1 contiend les
| villes. il peut y avoir plusieurs ecoles dans une meme ville..par ex si je
| selectionne AVIGNON sur la liste 1 je dois avoir selectionnés automatiquement
| "ecoleX avignon" ET "ecole Y avignon" sur la liste 2 car 2 ecoles dependent
| d'AVIGNON dans cet exemple...


regarde ceci :
http://www.self-access.com/access/grenier/acRedir.php?id


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
ALF
Un grand merci,Pierre
cela fonctionne parfaitement...
j'aurais une autre question à formuler sur ce même sujet...
comment faut il faire pour rajouter l'option "selectionner tout" sur la 1ere
zone de liste (zone de liste simple et non modifiable) avec multiselection
simple,pour eviter de selectionner tous les elements de la liste ??Il faut
peut etre utiliser l'asterisque??ou utiliser une autre option...Mais comment
s'y prendre???
Merci.
--
ALF



Salut,

"ALF"
| sur un meme formulaire j'ai 2 zones de liste independantes avec
| multiselection de type simple.
| je voudrais que lorsque j'ai selectionné plusieurs valeurs sur la 1ere zone
| de liste,cela impacte directement une selection automatique sur la 2ieme zone
| de liste;en sachant que chaque zone de liste est issue d une table
| differente: ainsi la table 2 contiend les ecoles et la table 1 contiend les
| villes. il peut y avoir plusieurs ecoles dans une meme ville..par ex si je
| selectionne AVIGNON sur la liste 1 je dois avoir selectionnés automatiquement
| "ecoleX avignon" ET "ecole Y avignon" sur la liste 2 car 2 ecoles dependent
| d'AVIGNON dans cet exemple...


regarde ceci :
http://www.self-access.com/access/grenier/acRedir.php?id


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/




Avatar
ALF
rebonjour,
je rajoute à l'envoi précédent,que cela fonctionne pour 2 zones de liste
modifiables mais cela ne marche pas pour des zones de liste classiques non
deroulantes...on peut selectionner plusieurs elements sur la 1ere liste mais
cela ne filtre pas automatiquement sur la 2eme qui apparait vide!!
j'ai donc 2 problemes: 1) : non fonctionnement du filtrage automatique avec
2 zones de liste et 2): comment rajouter l'element "selectionnertout" dans la
1ere zone de liste classique non deroulante

Merci encore...
--
ALF



Salut,

"ALF"
| sur un meme formulaire j'ai 2 zones de liste independantes avec
| multiselection de type simple.
| je voudrais que lorsque j'ai selectionné plusieurs valeurs sur la 1ere zone
| de liste,cela impacte directement une selection automatique sur la 2ieme zone
| de liste;en sachant que chaque zone de liste est issue d une table
| differente: ainsi la table 2 contiend les ecoles et la table 1 contiend les
| villes. il peut y avoir plusieurs ecoles dans une meme ville..par ex si je
| selectionne AVIGNON sur la liste 1 je dois avoir selectionnés automatiquement
| "ecoleX avignon" ET "ecole Y avignon" sur la liste 2 car 2 ecoles dependent
| d'AVIGNON dans cet exemple...


regarde ceci :
http://www.self-access.com/access/grenier/acRedir.php?id


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/




Avatar
3stone
Salut,

"ALF"
| je rajoute à l'envoi précédent,que cela fonctionne pour 2 zones de liste
| modifiables mais cela ne marche pas pour des zones de liste classiques non
| deroulantes...on peut selectionner plusieurs elements sur la 1ere liste mais
| cela ne filtre pas automatiquement sur la 2eme qui apparait vide!!
| j'ai donc 2 problemes: 1) : non fonctionnement du filtrage automatique avec
| 2 zones de liste


En fait, la liste déroulante (nom idiot en french ;-) est en réalité une
"liste combinée" entre une liste et une zone de texte (combobox)
et lorsque l'on demande la valeur de la "sélection" d'une telle liste,
on demande en réalité le contenu de la zone de texte.

Pour savoir ce qui est sélectionné dans une zone de liste, il faut utiliser

= Me.Liste0.Column(0, Me.Liste0.ListIndex)

Or, comme dans une requête on ne peut s'adresser à la propriété
.Column() d'une liste... il faut passer par le VBA ou une zone de texte
intermédiaire !


2): comment rajouter l'element "selectionnertout" dans la
1ere zone de liste classique non deroulante

par contre là... je ne vois pas l'utilisation... combiné avec une seconde liste ?

Sélecionner *tout* dans la première liste, équivaudrait à sélectionner tout
dans la seconde... donc plus de filtrage.


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
ALF
merci pour ces renseignements trés utiles,mais pourrais tu justement me dire :
1/ quelle procedure VBA faut il utiliser pour savoir ce qui est selectionné
dans une zone de liste et provoquer le filtrage automatique sur la 2eme zone
de liste...
2/ de la meme facon,comment s'y prendre pour creer une zone de texte
intermediaire afin de savoir ce qui est selectionné dans la 1ere zone de
liste puis provoquer le filtage automatique sur la 2eme zone de liste..
3/ en ce qui concerne le rajout de l element "selectionner tout",je voulais
simplement avoir la possibilité de tout selectionner plutot que de
selectionner un par un les elements de la liste,meme si l'utilite combiné
avec la 2eme liste n'est pas necessaire..ce qui eviterait d'autre part a
creer un autre bouton et donc de faire d une pierre 2 coups!! je reste donc
interressé par cette option mais comment faire pour rajouter celle ci???
Merci pour tout...
--
ALF



Salut,

"ALF"
| je rajoute à l'envoi précédent,que cela fonctionne pour 2 zones de liste
| modifiables mais cela ne marche pas pour des zones de liste classiques non
| deroulantes...on peut selectionner plusieurs elements sur la 1ere liste mais
| cela ne filtre pas automatiquement sur la 2eme qui apparait vide!!
| j'ai donc 2 problemes: 1) : non fonctionnement du filtrage automatique avec
| 2 zones de liste


En fait, la liste déroulante (nom idiot en french ;-) est en réalité une
"liste combinée" entre une liste et une zone de texte (combobox)
et lorsque l'on demande la valeur de la "sélection" d'une telle liste,
on demande en réalité le contenu de la zone de texte.

Pour savoir ce qui est sélectionné dans une zone de liste, il faut utiliser

= Me.Liste0.Column(0, Me.Liste0.ListIndex)

Or, comme dans une requête on ne peut s'adresser à la propriété
..Column() d'une liste... il faut passer par le VBA ou une zone de texte
intermédiaire !


2): comment rajouter l'element "selectionnertout" dans la
1ere zone de liste classique non deroulante

par contre là... je ne vois pas l'utilisation... combiné avec une seconde liste ?

Sélecionner *tout* dans la première liste, équivaudrait à sélectionner tout
dans la seconde... donc plus de filtrage.


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/




Avatar
3stone
re,

"ALF"
| merci pour ces renseignements trés utiles,mais pourrais tu justement me dire :
| 1/ quelle procedure VBA faut il utiliser pour savoir ce qui est selectionné
| dans une zone de liste et provoquer le filtrage automatique sur la 2eme zone
| de liste...
| 2/ de la meme facon,comment s'y prendre pour creer une zone de texte
| intermediaire afin de savoir ce qui est selectionné dans la 1ere zone de
| liste puis provoquer le filtage automatique sur la 2eme zone de liste..


Le plus simple...
Quelque part sur ton formulaire, tu crée une petite zone de texte
(après les tests, tu pourras la rendra invisible...)
Sur "Après mise à jour" de la liste, tu écris:

Me.Texte0 = Me.NomListe.Column(X, Me.NomListe.ListIndex)

Texte0 = le nom de ta textbox ajoutée
NomListe = le nom de ta liste...
X = le numéro de ta colonne (qui commence par 0)

maintenant, il suffit que la requête de ta seconde liste pointe
vers le textbox au de pointer la liste ;-)

| 3/ en ce qui concerne le rajout de l element "selectionner tout",je voulais
| simplement avoir la possibilité de tout selectionner plutot que de
| selectionner un par un les elements de la liste,meme si l'utilite combiné
| avec la 2eme liste n'est pas necessaire..ce qui eviterait d'autre part a
| creer un autre bouton et donc de faire d une pierre 2 coups!! je reste donc
| interressé par cette option mais comment faire pour rajouter celle ci???


Cela revient plutôt à dire : si pas de sélection... alors je veux tout !
Pour cela, on modifie la clause de la requête comme expliqué ici :
http://www.mvps.org/accessfr/queries/qry0001.htm


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
ALF
-- Merci Pierre,
Cela fonctionne parfaitement et reponds totalement à mon probleme...bravo
pour ton professionalisme...
je me permet de te demander une derniere question pour satisfaire ma
curiosité,comment aurait il fallu proceder si j'avais opté pour la methode
VBA sans passer par la methode zone de texte intermediaire ??? Quelle aurait
été la procedure ou Code ???
Merci encore pour ta patience et ton savoir faire...
ALF



re,

"ALF"
| merci pour ces renseignements trés utiles,mais pourrais tu justement me dire :
| 1/ quelle procedure VBA faut il utiliser pour savoir ce qui est selectionné
| dans une zone de liste et provoquer le filtrage automatique sur la 2eme zone
| de liste...
| 2/ de la meme facon,comment s'y prendre pour creer une zone de texte
| intermediaire afin de savoir ce qui est selectionné dans la 1ere zone de
| liste puis provoquer le filtage automatique sur la 2eme zone de liste..


Le plus simple...
Quelque part sur ton formulaire, tu crée une petite zone de texte
(après les tests, tu pourras la rendra invisible...)
Sur "Après mise à jour" de la liste, tu écris:

Me.Texte0 = Me.NomListe.Column(X, Me.NomListe.ListIndex)

Texte0 = le nom de ta textbox ajoutée
NomListe = le nom de ta liste...
X = le numéro de ta colonne (qui commence par 0)

maintenant, il suffit que la requête de ta seconde liste pointe
vers le textbox au de pointer la liste ;-)

| 3/ en ce qui concerne le rajout de l element "selectionner tout",je voulais
| simplement avoir la possibilité de tout selectionner plutot que de
| selectionner un par un les elements de la liste,meme si l'utilite combiné
| avec la 2eme liste n'est pas necessaire..ce qui eviterait d'autre part a
| creer un autre bouton et donc de faire d une pierre 2 coups!! je reste donc
| interressé par cette option mais comment faire pour rajouter celle ci???


Cela revient plutôt à dire : si pas de sélection... alors je veux tout !
Pour cela, on modifie la clause de la requête comme expliqué ici :
http://www.mvps.org/accessfr/queries/qry0001.htm


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/




Avatar
3stone
re,

"ALF"
[...]
| je me permet de te demander une derniere question pour satisfaire ma
| curiosité,comment aurait il fallu proceder si j'avais opté pour la methode
| VBA sans passer par la methode zone de texte intermediaire ??? Quelle aurait
| été la procedure ou Code ???


Il faut tout créer par VBA...
Y compris la requête que tu attribue à la source des listes.

Il doit bien exister un petit tuto quelque part, sinon, j'en ferais bien un, un jour...

;-)


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
1 2 3