Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > IHM
IHM Ce forum est dédié aux questions relatives à la création de formulaires et d'états, avec ou sans code VBA, et macros.
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 19/12/2010, 17h26   #1
Futur Membre du Club
 
Louise Pelletier
Inscription : août 2010
Messages : 47
Détails du profil
Informations personnelles :
Nom : Louise Pelletier

Informations forums :
Inscription : août 2010
Messages : 47
Points : 17
Points : 17
Par défaut afficher le type de tri

Bonjour,

J'ai une liste d'informations que je tri à l'ouverture du formulaire.

J'aimerais savoir comment afficher le nom des champs qui sont triés dans mon objet étiquette, appelé "etiTri".

Et si un utilisateur clique sur une entête de colonne et qu'il modifie le tri, comment faire pour mettre à jour l'objet "etiTri" ?

Merci
marycaLou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/12/2010, 06h20   #2
Rédacteur/Modérateur
 
Avatar de Philippe JOCHMANS
 
Homme Philippe JOCHMANS
Développeur informatique
Inscription : mai 2005
Messages : 17 605
Détails du profil
Informations personnelles :
Nom : Homme Philippe JOCHMANS
Âge : 44
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Communication - Médias

Informations forums :
Inscription : mai 2005
Messages : 17 605
Points : 30 948
Points : 30 948
Envoyer un message via MSN à Philippe JOCHMANS Envoyer un message via Skype™ à Philippe JOCHMANS
Bonjour

Il serait bien de donner des détails, car comme cela ton message est incompréhensible par ceux qui ne voient pas ton écran.

Citation:
J'ai une liste d'informations que je tri à l'ouverture du formulaire.
De quelle manière effectues tu ce tri ?

Citation:
J'aimerais savoir comment afficher le nom des champs qui sont triés dans mon objet étiquette, appelé "etiTri".
Cela découle de la première, en fonction de la manière dont tu fais ton tri les membres du forum pourront te répondre.
Tu parles d'afficher le nom des champs, donc tu veux faire une concaténation dans une étiquette ?

Citation:
Et si un utilisateur clique sur une entête de colonne et qu'il modifie le tri, comment faire pour mettre à jour l'objet "etiTri" ?
Entête de colonne ?

Ton tri s'affiche dans une zone de liste ? un sous-formulaire ?

Plein de questions, car on ne connait pas le contexte de ton formulaire de tri, donc tu pourras avoir pleins de réponses qui ne serviront à rien.

Donc merci de détailler.

Philippe
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
Si vous pensez commencer sans un livre, oublier : livres pour débuter
Vous pouvez consulter mes articles sur Access et PowerPoint
Le blog Office.

Inutile de m'envoyer un MP pour des questions techniques ou de me relancer , je n'y répondrais pas.
Philippe JOCHMANS est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/12/2010, 16h54   #3
Futur Membre du Club
 
Louise Pelletier
Inscription : août 2010
Messages : 47
Détails du profil
Informations personnelles :
Nom : Louise Pelletier

Informations forums :
Inscription : août 2010
Messages : 47
Points : 17
Points : 17
Je vais tenter d'être un peu plus précise.
J'affiche une liste d'informations avec un formulaire sous la forme d'une liste "Split Form".
Dans cette liste apparaît la "Date de modification", le "No de projet", le "Titre du document", "l'état du document", la "Date de destruction", etc.

Lorsque la liste est chargée à l'écran, elle est triée par ordre de "date de modification" et de "numéro de projet" de l'enregistrement.

Dans un objet "Label" que j'ai appelé "etiTri", j'affiche le tri actif. Exemple: etiTri.caption = "La liste est triée par: Date de modification et par No de projet, en ordre Descendant."

Il est possible à l'ustilsateur de modifier le tri. Il peut cliquer sur l'une dess entêtes de colonne de la liste pour modifier le tri. Exemple: En cliquant sur l'entête de la colonne "Titre du document" ou "État du document", il peut demander un tri Asc ou Desc de la colonne sélectionnée.

Ma question est comment faire pour afficher dans l'objet "EtiTri" le nouveau tri fait par l'utiilisateur.
marycaLou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/12/2010, 08h54   #4
Rédacteur/Modérateur
 
Avatar de Jeannot45
 
Homme Jean BALLAT
Inscription : octobre 2004
Messages : 2 856
Détails du profil
Informations personnelles :
Nom : Homme Jean BALLAT
Âge : 63
Localisation : France, Loiret (Centre)

Informations forums :
Inscription : octobre 2004
Messages : 2 856
Points : 5 221
Points : 5 221


Peut-être une solution dans ce tuto : les listes multifonctions

Bonne lecture
__________________
Jeannot

Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., [B]Sources VBA

Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre
Jeannot45 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/12/2010, 12h29   #5
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonjour,

Gère l'événement «Sur filtre appliqué» du formulaire.
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Private Sub Form_ApplyFilter(Cancel As Integer, ApplyType As Integer)
Dim strOrderBy As String, strTri As String
Dim arrChamps() As String, lIdx As Long
Dim strChamp As String, lPos As Long, bDesc As Boolean
 
strOrderBy = Me.OrderBy
If Len(strOrderBy) > 0 Then
   arrChamps = Split(strOrderBy, ",")
   For lIdx = LBound(arrChamps) To UBound(arrChamps)
       strChamp = arrChamps(lIdx)
       bDesc = False
       ' retire le nom de la table
       If strChamp Like "[[]*[]].*" Then
          lPos = InStr(1, strChamp, "].")
          strChamp = Mid(strChamp, lPos + 2)
       ElseIf strChamp Like "*.*" Then
          lPos = InStr(1, strChamp, ".")
          strChamp = Mid(strChamp, lPos + 1)
       End If
       ' détermine si tri ascendant ou descendant
       If strChamp Like "* DESC" Then
          bDesc = True
          strChamp = Left(strChamp, Len(strChamp) - 5)
       End If
       ' Retire les crochets droits
       If strChamp Like "[[]*[]]" Then
          strChamp = Mid(strChamp, 2, Len(strChamp) - 2)
       End If
       ' Construit chaîne de caractère strTri
       If Len(strTri) > 0 Then strTri = strTri & ", "
       strTri = strTri & strChamp
       If bDesc Then
          strTri = strTri & " Décroissant"
       Else
          strTri = strTri & " Croissant"
       End If
   Next
   Me.lblTri.Caption = strTri
Else
   Me.lblTri.Caption = ""
End If
End Sub
A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2011, 00h42   #6
Futur Membre du Club
 
Louise Pelletier
Inscription : août 2010
Messages : 47
Détails du profil
Informations personnelles :
Nom : Louise Pelletier

Informations forums :
Inscription : août 2010
Messages : 47
Points : 17
Points : 17
Merci beaucoup.
Cela a bien fonctionné.
marycaLou 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 09h05.


 
 
 
 
Partenaires

Hébergement Web