IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

regrouper des données dans une listebox [AC-2003]


Sujet :

Access

  1. #1
    Membre actif
    Inscrit en
    Avril 2007
    Messages
    1 239
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 1 239
    Points : 213
    Points
    213
    Par défaut regrouper des données dans une listebox
    Bonjour,
    Est il possible de créer des entetes de groupe dans une listebox access : un peu comme on le fait dans une etat .
    Si je veux etre plus précis, j'ai une liste box avec plusieurs colonnes dont une qui contient des heures (hh:mm)
    Dans ma listebox je me retrouve avec ceci

    heure NOM
    00:00 nom A
    00:00 nom B
    00:00 nom C
    03:00 nom D
    03:00 nom E
    03:30 nom F
    03:30 nom G
    etc

    Est il possible de créer ceci :
    Heure NOM
    00:00 nom A
    nom B
    nom C
    etc

    En résumé, une colonne avec une seule même heure et une deuxième colonne avec les nom qui correspondant à cette heure

    J'ai essayé de créer un état mais j 'ai trop de donnée

    Merci d'avance

  2. #2
    Membre éclairé
    Avatar de Didier L
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2004
    Messages
    503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2004
    Messages : 503
    Points : 806
    Points
    806
    Par défaut
    Bonsoir,
    En fait, tu veux avoir deux colonnes dans ta liste box, Heure et Nom, trié par heure et par nom et ne pas répéter les heure dans la colonne heure lorsqu'elles sont identiques à la valeur précédente ?
    C'est bien cela ?
    Exemple
    Heure | Nom
    00:00 | Nom A
    | Nom B
    | Nom C
    03:00 | Nom D
    | Nom E
    | Nom F

    Si tel est le cas, il faut travailler dans la requête source de ta liste box
    Cela peut se faire a l'aide d'une fonction qui contient une variable Static
    @+


    Pensez au tag

  3. #3
    Membre actif
    Inscrit en
    Avril 2007
    Messages
    1 239
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 1 239
    Points : 213
    Points
    213
    Par défaut
    Bonjour Didier,
    c'est exactement cela...
    Et pourrais tu m'expliquer cette piste :
    Cela peut se faire a l'aide d'une fonction qui contient une variable Static
    ...

  4. #4
    Membre éclairé
    Avatar de Didier L
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2004
    Messages
    503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2004
    Messages : 503
    Points : 806
    Points
    806
    Par défaut
    Premièrement dans un module tu crée la fonction suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Function MonHeure(ByVal pdValue) As String
    Static vdOldValue
        If IsNull(vdOldValue) Then
            vdOldValue = pdValue
            MonHeure = Format(pdValue, "hh:nn")
        Else
            If vdOldValue <> pdValue Then
                vdOldValue = pdValue
                MonHeure = Format(pdValue, "hh:nn")
            Else
                MonHeure = ""
            End If
        End If
    End Function
    Ensuite tu crée la requête suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT MonHeure([Heure]) AS GroupeHeure, Nom
    FROM Table5
    ORDER BY Heure, Nom;
    Dans mon exemple ma table s'appelle Table5

    Et ensuite tu met ta requête en source de ta liste box
    @+


    Pensez au tag

  5. #5
    Membre actif
    Inscrit en
    Avril 2007
    Messages
    1 239
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 1 239
    Points : 213
    Points
    213
    Par défaut
    un seul mot bravo...

    j'en profite pour savoir s'il est possible, toujours dans la listebox, de tracer une ligne entre les GroupeHeure?

  6. #6
    Membre éclairé
    Avatar de Didier L
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Juillet 2004
    Messages
    503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Consultant informatique

    Informations forums :
    Inscription : Juillet 2004
    Messages : 503
    Points : 806
    Points
    806
    Par défaut
    Beaucoup plus difficile car il faudrait insérer des lignes dans une table et arriver a les intercaler dans la requête
    @+


    Pensez au tag

  7. #7
    Membre actif
    Inscrit en
    Avril 2007
    Messages
    1 239
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 1 239
    Points : 213
    Points
    213
    Par défaut
    tant pis...
    je vais laisser ma listebox ainsi..
    Merci encore Didier..
    Je cloture cette discussion..

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] Incrémenter et classer des données dans une listebox access
    Par facteur dans le forum VBA Access
    Réponses: 30
    Dernier message: 22/08/2014, 15h35
  2. ajouter des données dans une requête htttp en js
    Par jeromejanson dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 18/10/2005, 15h34
  3. Réponses: 4
    Dernier message: 19/09/2005, 15h59
  4. [SQL server] Comment Fusionner des données dans une requête
    Par MoTUmBo dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 27/07/2005, 15h24
  5. Réponses: 2
    Dernier message: 15/06/2005, 17h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo