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

Macros et VBA Excel Discussion :

Liaison de listes


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 75
    Par défaut Liaison de listes
    Bonjour,
    J'aimerais savoir s'il était possible de lier certaines données de listes entre elles.
    Cela sera plus facile a expliquer dans un exemple.

    Des élèves sont inscrits dans plusieurs établissement chacun.
    J'ai donc une liste d'élève et une autre liste d'établissements fréquentés qui change suivant l'élève sélectionné (ils ne peuvent être tous au même endroit en même temps).
    En revanche, il se peut que plusieurs élèves aient un ou plusieurs établissements en commun.
    J'aimerais donc pouvoir trier la liste d'élèves par ordre alphabétique et pouvoir aussi savoir par le biais d'un tri ou d'une recherche, quels sont tous les élèves fréquentant le même établissement.
    En espérant avoir été clair...
    Nicht

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Bonjour,
    En fait ce que tu demandes a plus à voir avec l'organisation des données qu'une réelle méthode de tri conditionnel
    Je suppose une feuille de calculs avec deux colonne, une pour le nom des élèves, la seconde pour le nom de l'établissement correspondant.
    Une liste des élèves : Quand tu sélectionnes un élève, tu souhaites obtenir la liste de tous les élèves fréquentant le même établissement.
    Pour faire ça il suffit de retrouver la ligne de l'élève (recherche dans la colonne "Elève" avec Find) et de placer un filtre selon l'établissement situé sur la ligne de l'élève sélectionné.
    As-tu un problème pour faire ça ? As-tu un code à nous proposer ?
    A+

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 75
    Par défaut
    Bonjour ouskel'n'or
    En fait, ce n'est pas exactement ça.
    Au départ j'ai seulement la liste d'élèves de remplie.
    A chaque fois que je selectionne un élève la seconde liste se remplie avec la liste des établissements fréquentés par cet élève.
    Ce serait un genre de liste avec des lignes ayant chacunes plusieurs lignes sur la deuxième colonne.
    Le plus dur étant que je souhaite remplir mes liste dans un fichier et non sur une feuille.
    Merci de t'investir dans mon problème.
    Nicht

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Ce serait un genre de liste avec des lignes ayant chacunes plusieurs lignes sur la deuxième colonne.
    Access se prêterait mieux à cette structure de base de données.
    Avec Excel, il serait préférable d'utiliser plusieurs colonnes, une par éguipement. Mais je suppose que ton pb ne concerne ni des élèves ni des établissements scolaires...
    Ne peux-tu nous en dire plus ?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 75
    Par défaut
    Avec Excel, il serait préférable d'utiliser plusieurs colonnes, une par éguipement
    Comment ça?
    On peut faire des tableaux à nombre de colonnes non défini?
    Peut-être peut-on faire des tableaux à plus de 2 dimensions?

    Mais je suppose que ton pb ne concerne ni des élèves ni des établissements scolaires...
    En fait, il concerne rien du tout:
    J'apprends, et je me suis rendu compte que je ne savais pas encore faire ça...
    Donc je demande, et quand j'aurai un projet qui l'utilise, je m'en servirai (j'ai une petite idée...).
    Donc, pour l'instant je ne peux vous en dire plus.
    nicht

  6. #6
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Peut-être peut-on faire des tableaux à plus de 2 dimensions?
    Dans Excel, non mais ce n'est pas nécessaire, le tableau peut conserver ses deux dimensions. Un équipement, une colonne ; deux équipements, une colonne supplémentaire.
    "A1: G12" est une plage de cellules ou "range"
    Un range est un tableau à deux dimensions
    peut aussi s'écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range(cells(NoLig1, NoCol1), Cells(NoLig2, NoCol2))
    Et pour parcourir toutes les cellules d'une plage de cellules on peut faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    For NoLig = NoLig1 to NoLig2
         For NoCol = NoCol1 to NoCol2
               Result = Cells(NoLig, NoCol)
         Next NoCol
    Next NoLig
    Maintenant, si je veux parcourir un tableau à deux dimensions, je fais la même chose
    Je suppose le tableau à deux dimensions Tablo(12, 7) Pour le lire je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    For i = 1 to 12
         For j = 1 to 7
               Result = Tablo(i, j)
         Next j
    Next i
    C'est pareil.
    Donc, pour connaître tous les équipement fréquentés par chaque élève tu cherches la dernière colonne renseignée de la ligne de l'élève, ce sera la colonne du dernier équipement.
    Ce n'est pas économe en terme d'espace occupé mais Excel s'en moque. Avec ses 256 colonnes et 65536 lignes, ça laisse de la marge.
    Mais ainsi structurée ta base de données se gèrera sans difficulté.
    Dans le cas contraire ? Ben c'est un endroit où tu places des données mais qui n'a rien à voir avec une "base de données"
    Bonne soirée

Discussions similaires

  1. [AJAX] liaison de listes déroulantes
    Par developpeuse20 dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 03/03/2009, 17h25
  2. [E-07] Liaison entre liste déroulante bouton et etiquette.
    Par Blinis dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 27/11/2008, 15h22
  3. liaison de liste déroulante
    Par FCL31 dans le forum Modélisation
    Réponses: 3
    Dernier message: 02/10/2007, 13h48
  4. [Formulaire]Liaison entre listes
    Par franck1001 dans le forum IHM
    Réponses: 19
    Dernier message: 19/05/2007, 00h36
  5. Liaison entre liste déroulante et un champs
    Par lolo_bob2 dans le forum Access
    Réponses: 4
    Dernier message: 19/04/2006, 12h54

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