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 :

Liste déroulante ajoutant une autre automatiquement


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité(e)
    Invité(e)
    Par défaut Liste déroulante ajoutant une autre automatiquement
    Bonjour à tous !

    Je suis en train de créer un fichier excel qui concernera des "actions", faites par des "acteurs"...

    Je souhaiterais pouvoir créer par exemple dans toute la colonne D, sauf la D1 pour le titre, une liste déroulante des acteurs possibles des actions situer en C.

    J'ai besoin d'une liste déroulante rattachée à une cellule en particulier, j'ai besoin surtout que si un acteur est choisis parmi la liste, qu'une deuxieme liste déroulante apparaisse à son tour dans la même celulle, pour donner le choix d'un deuxieme acteur, et qu'une troisieme apparaisse si le champs de la deuxieme liste est renseigné. Il faut aussi que la celulle adapte sa taille à chaque apparition de liste...

    J'espère que vous arriver à comprendre ce que je souhaite

    J'avais la solution de fusionner les cellules sauf celles pour les lsites, mais vu que le nombre d'acteurs n'est pas fixe...

    Si vous avez des solutions plus simple pour faire ce que je veux, je prends aussi ^^

    Merci beaucoup.
    Dernière modification par Invité(e) ; 08/12/2009 à 11h26.

  2. #2
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Bonjour
    Une phrase me fait "tiquer"
    j'ai besoin surtout que si un acteur est choisis parmi la liste, qu'une deuxieme liste déroulante apparaisse à son tour dans la même celulle
    Ca c'est pas possible, une info par cellule. Tu ne peux pas diviser les cellules.
    Alors soit tu acceptedavoir plusieur cellule soit tu passe par une autre solution.

    Personnellement j'utiliserais un userform avec une liste box qui contient la liste de tous les acteurs. Tu mais la propriété multiselect a vrai.
    Un bouton validé. Qui charge tous les noms selectionné dans ta cellule en les séparat par des virgule par exemple.

    les différents tutos qui te seront utile
    http://silkyroad.developpez.com/VBA/...Feuille/#LII-B
    l'évènement double click sur ta cellule pour lancer le userform

    http://silkyroad.developpez.com/VBA/...serForm/#LII-G
    pour travailler sur la listbox et récupérer les différent élément selectionné voir lexemple qui corespond


    http://silkyroad.developpez.com/VBA/UserForm/
    si tu n'as jamais fais de userform

    http://silkyroad.developpez.com/VBA/...nesCaracteres/
    pour la manipulation de chaine de caractère mais a mon avis tu naura pas besoin des fonction de ce tuto savoir que & est le symbole de concaténation et rechercher concaténation sur google devrai suffire

    Je te laisse lire tout ceci et commencer ton code. On verra ensuite comment le débuguer et adapter la taille de ta colonne

  3. #3
    Invité(e)
    Invité(e)
    Par défaut
    Je te remercie, je vais lire tout ça

  4. #4
    Membre Expert

    Homme Profil pro
    Technicien Métrologie R&D
    Inscrit en
    Janvier 2007
    Messages
    1 610
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien Métrologie R&D
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 610
    Billets dans le blog
    1
    Par défaut
    de memoire le sujet à été traité plusieur fois sous le dénominatif liste déroulante imbriqué il me semble qu Wilfrid 42 avait fait un truc avec trois listes se déroulant dans la même cellule imbrique sur les choix fait.

  5. #5
    Invité(e)
    Invité(e)
    Par défaut
    J'ai recherché quelques solutions, mais le problème c'est que j'aimerais en plus pouvoir utiliser le filtre auto sur la colonne concernée... Ainsi un acteur aura juste a mettre son nom en filtre pour voir toutes les actions auquelles il devra participer...

    Et je ne penses pas que les liste imbriquées, ou une userform me permette cela...

    Je penses que le plus simple est de ce limiter à deux acteurs et de faire le tableau en conséquence... C'est embetant mais je penses que c'est mieux...

    Car sinon je m'attaque à un trop gros morceau...

  6. #6
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Leproblème viens visiblement du fait que tu ignor combien de colonne tu aura besoin. C'est jouable par macro de faire un filtre erso avec le nom de lactuer en mettant tousles noms séparer par une virgule.
    Mais effectivement ce ne sera pas imédiat et va necessité un peu de travail
    Le plus long sera l'userform de saisie mais la tu as tous les tutos

    Tu stocke les nom sous la forme
    Acteur1 , Acteur 2 , Acteur3

    Et un filtre apr macro du type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Selection.AutoFilter Field:=1, Criteria1:="=*" & lenom & "*", Operator:=xlAnd
    Permet de faire le filtre.
    Mais c'esta toi de voir le meilleur rendement temps de developpement confort d'utilisation
    Je te dis juste que si tu suis les tutos ce n'ets pas compliquéet on peux t'aider

Discussions similaires

  1. MAJ liste déroulante depuis une autre liste
    Par airbeone dans le forum Langage
    Réponses: 1
    Dernier message: 15/01/2008, 17h41
  2. Réponses: 7
    Dernier message: 03/12/2007, 15h37
  3. [Access] Filtrer une liste déroulante depuis une autre
    Par Marie_2116 dans le forum Access
    Réponses: 20
    Dernier message: 24/08/2007, 17h19
  4. liste déroulante, ajouter une valeur
    Par pierre.egaud dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 18/09/2006, 14h34
  5. Griser 1 liste déroulante liée à une autre, pb de concaténat
    Par linou dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/03/2005, 16h45

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