OVH Cloud OVH Cloud

tri en vba

4 réponses
Avatar
Rosalie Mignon
Bonjour et bonne année à tous.
On peut faire des tris dans access à l'aide de la barre d'outil, en
rajoutant les icônes "filtre par sélection" et "filtre hors sélection" et
"afficher tous les enregistrements".
C'est bien pratique, on pose le curseur sur un champ et tous les
enregistrements qui correspondent au champ sont filtrés.

Ma question est : quel est le code VBA qui permet de faire la même chose ?

Je n'ai pas trouvé dans les FAQ, mais sans doute ai-je mal cherché.

Bonne journée.

4 réponses

Avatar
Rosalie Mignon
"Jacques" a écrit dans le message de news:
#
Bonjour,

Il existe la fonction DLookup.



Merci, je vais explorer cette piste...

Avatar
3stone
Salut,

"Jacques"
|
| Il existe la fonction DLookup.
|


Pour faire un tri / filtre ?



Rosalie:

Dans l'objet tu parles de tri et dans le message de tri et filtre.... quid ?

La fonction de "filtre par sélection" est très pratique *sans rien programmer*
Le plus simple est donc de créer ta propre barre d'outils dans laquelle tu placeras ces fonctions.



Sinon, regarde "Filter = ..." et "FilterOn = True"

et pour "piocher" le champ concerné, regarde vers Screen.PreviousControl
pour savoir quel champ avait le focus avant de cliquoullier sur le bouton!


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

Il s'agit des propriétés de formulaires Filter & FilterOn pour filtrer
et OrderBy & OrderByOn pour trier.

Pour Filtrer un formulaire:
Me.Filter = "LeChampDeFiltre='LaValeurTexte'"
'Me.Filter = "LeChampDeFiltre=LaValeurNumérique"
Me.FilterOn = True 'Active le filtre

Pour Annuler le Filtre:
Me.FilterOn = False

Pour Trier :
Me.OrderBy = "LeChampATrier Desc" ' par défaut le tri est croissant
(ASC) si rien de préciser
Me.OrderByOn = True

Pour Oter le Tri:
Me.OrderByOn = False

Ces lignes de commandes sont à mettre par exemple sur les évènements
Click de boutons de commande.

PS1: pour un filtre sur 2 champs (ou plus):
Me.Filter = "Champ1='ValeurTexte1' AND Champ2='ValeurTexte2'"
PS2: pour trier sur 2 champs:
Me.OrderBy = "ChampATrier1 Desc,ChampATrier2 Asc"

"Jacques" a écrit dans le message de news:
#

Bonjour,

Il existe la fonction DLookup.




Merci, je vais explorer cette piste...




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr


Avatar
Jacques
Bonjour,

Il existe la fonction DLookup.

Jacques


"Rosalie Mignon" a écrit dans le message de
news:43b92c41$0$19685$
Bonjour et bonne année à tous.
On peut faire des tris dans access à l'aide de la barre d'outil, en
rajoutant les icônes "filtre par sélection" et "filtre hors sélection" et
"afficher tous les enregistrements".
C'est bien pratique, on pose le curseur sur un champ et tous les
enregistrements qui correspondent au champ sont filtrés.

Ma question est : quel est le code VBA qui permet de faire la même chose ?

Je n'ai pas trouvé dans les FAQ, mais sans doute ai-je mal cherché.

Bonne journée.