Rechercher : dans
Par :

Excel - Liste déroulante conditionnelle

Dernière réponse le 15 sep 2009 à 12:13:03 cyrilounet, le 5 fév 2008 à 19:14:02 
 Signaler ce message aux modérateurs

Bonsoir,

Je voudrais arriver à créer sous Excel une liste déroulante dont le contenu affiché serait fonction de la valeur de la cellule d'avant (qui est elle-même une liste déroulante).

Pour être plus clair, j'ai une liste de services Liste_Services (Service 1, Service 2, Service n...) dans une cellule. Cette liste, je l'ai faite depuis le menu "Données / Validation". Je souhaiterais dans la cellule suivante qu'apparaisse une liste d'items qui correspondent au service sélectionné.

En gros, j'ai sur une feuille Excel (feuille A) le tableau suivant :

  |      A    |      B     |     C     |     D     |     E        
1 |           | Service 1  | Service 2 | Service 3 | Service n 
2 | Service 1 |  Item B2   |  Item C1  |  Item D1  | Item E1
3 | Service 2 |  Item B3   |  Item C2  |  Item D2  | Item E2 
4 | Service 3 |  Item B4   |  Item C3  |  Item D3  | Item E3
5 | Service n |  Item Bn   |  Item Cn  |  Item Dn  | Item En


Dans une autre feuille (feuille B), j'ai (de manière simplifiée) les cellules suivantes :

 Liste_Services | Liste_Item


Une fois le service sélectionné dans cette feuille, je souhaiterais que la liste Liste_Item s'affiche en fonction du choix effectué (c'est-à-dire en focntion de Liste_Services). Si je sélectionne le Service 2, je voudrais que seule la liste de services Service 2 (colonne C de la feuille A ) s'affiche.

Je ne sais pas trop comment faire à ce niveau. Les listes sont définies.

J'espère avoir exposé assez clairement le problème que j'ai pour que quelqu'un me dépatouille.

Un grand merci d'avance à celui ou celle (ne soyons pas sexiste) qui m'aidera à résoudre ce soucis.

Cordialement.
Configuration: Windows XP
Firefox 2.0.0.11

Meilleures réponses pour « Excel Liste déroulante conditionnelle » dans :
Listes déroulantes simples avec Excel Voir Dans votre tableau, vous souhaitez insérer un texte ou une valeur choisi dans une liste (déroulante). vous créez votre liste, ligne aprés ligne, sur votre feuille en cours ou sur une autre feuille du classeur en cours. vous la nommez : INSERTION...
Liste déroulante avec saisie semi automatique pour EXCEL VoirC'est une procédure qui demande un investissement personnel et qui n'est pas nécessairement facile à comprendre et à réaliser dès la première fois. Afin de rendre cette astuce facile à utiliser, nous allons employer les plages et les formules...

1

cyrilounet, le 5 fév 2008 à 23:06:39
  • +7

Bon, j'ai trouvé une solution qui consiste à afficher une liste dite dynamique en fonction du service sélectionné :-)

Si ça tente quelqu'un, n'hésitez pas.

Bonne continuation

Répondre à cyrilounet

2

One, le 27 fév 2008 à 11:08:49

Bonjour,
J'aimerais que tu m'apprennes comment tu as fait car je suis face au même problème.
Merci

Répondre à One

3

Cyrilounet, le 27 fév 2008 à 18:47:35
  • +5

Salut,

En fait, j'ai créé mes listes dans une feuille (Feuille_Liste), comme suit :

  |     A     |     B     |     C     |      D    |     E
1 |           | Service 1 | Service 2 | Service 3 | Service n 
2 | Service 1 | Symp. 1_1 | Symp. 2_1 | Symp. 3_1 | Symp. n_1
3 | Service 2 | Symp. 1_2 | Symp. 2_2 | Symp. 3_2 | Symp. n_2
4 | Service 3 |           | Symp. 2_3 | Symp. 3_3 | Symp. n_3
5 | Service n |           | Symp. 2_n |           | Symp. n_n


J'ai ensuite nommé chaque liste :
- listeServices pour B1:E1
- ERR_liste1 pour B2:B3
- ERR_liste2 pour C2:C5
- ERR_liste3 pour D2:D4
- ERR_listen pour E2:E5

Dans ma feuille principale (Feuille1), dans la cellule où je voulais afficher ma première liste (E2 par exemple), j'ai créé une liste comme suit :
- menu Données / Validation ;
- dans la partie "autoriser", j'ai sélectionné "Liste" ;
- dans la partie "Source", j'ai mis la formule suivante : =listeServices puis OK.

Dans la cellule suivante F2 (cellule dont l'affichage dépend du choix de la cellule précédente), j'ai procédé comme suit :
- menu Données / Validation ;
- dans la partie "autoriser", j'ai positionné sur "Liste" ;
- dans la partie "Source", j'ai mis la formule suivante : =INDIRECT("ERR_"&(RECHERCHE(F2;listeServices)))

Et le tour est joué (si je n'ai rien oublié). Si tu as besoin de plus d'explication, ou d'aide, n'hésite pas ;-)

Cordialement

Répondre à Cyrilounet

11

Paradis, le 19 mai 2008 à 21:43:33

Bonjour,
Je me suis penché sur les formules de Cyrilounet.
je les ai mis en application car une liste déroulante qui dépend d'une autre allégerait le travail sur des fichiers excel.

Si j'ai mis en route la 1ère liste avec la formule suivante : =listeServices puis OK., celle -ci fonctionne.

La 2° liste ne donne aucun résultat. et je vois bien que c'est normal car il n'est pas utilisé les noms des colonnes du tableau de données à savoir :
- ERR_liste1 pour B2:B3
- ERR_liste2 pour C2:C5
- ERR_liste3 pour D2:D4
- ERR_listen pour E2:E5


Bref la formule =INDIRECT("ERR_"&(RECHERCHE(F2;listeServices))) semble incomplète.

Bref y vois-tu une possibilité ?
En ce qui me concerne, ces formules m'apprennent les profondeurs d'excel et vont me permettre de les adpater à d'autres données...
Merci d'avance de repencher sur tes formules.
Cordialement

Répondre à Paradis

12

Paradis, le 19 mai 2008 à 22:12:03

Re bonsoir
Mea culpa
Comme tous les messages précédents.
Au moment de constituer le 2° liste de choix j'ai le message :la source est reconnue comme erronée. Ce n'est pas un pb de liste non utilisée comme je l'ai écrit un peu vite.
Un pb de marquage de cellule ??? tjrs sur cette formule : =INDIRECT("ERR_"&(RECHERCHE(F2;ListeServices)))
Si qqun peut indiquer la solution sur ce forum.
Merci

Répondre à Paradis

31

Jeremy, le 14 aoû 2008 à 08:35:34
  • +1

Moi ca m'intéresse ton truc de liste !

je dois choisir une marque de voiture et ensuite avoir un choix entre plusieurs modèles !

Répondre à Jeremy

49

charfs, le 9 mar 2009 à 18:54:28

Stp, ca m'interesse le code " Liste déroulante conditionnelle"

Répondre à charfs

50

Runsh, le 12 mar 2009 à 13:46:24

Bonjour Charfs,

Donne-moi ton adresse e-mail que je puisse te faire parvenir un fichier qui m'a été très utile pour développer mes listes déroulantes conditionnelles.

Runsh

Répondre à Runsh

51

michel_m, le 12 mar 2009 à 13:56:36

Bpnjour,

Il est préférable de ne pas utiliser les mails perso pour communiquer des solutions: les forums sont basés sur le partage des connaissances... outre que marquer une adresse mail est le rêve des spammeurs mais là, c'est votre problème.
pour mettre une pièce jointe, utiliser ce site:
http://cjoint.com/
et copier dans le message le lien proposé

Concernant les listes conditionnelles, ci joint (...) une compilation de démos suite aux différents problèmes posés sur ce thème
http://cjoint.com/?don4xyyDle
Cordialement, Michel

Répondre à michel_m

59

spacyxv, le 15 jun 2009 à 13:02:09

Bonjour Michel,

Merci beaucoup pour le tuto Excel qui m'a bien aidé.

A bientôt,

Répondre à spacyxv

60

wowowo, le 14 aoû 2009 à 16:33:08

Salut

je m'arrache les cheveux sur la création de liste déroulante fonction de la précédente liste déroulante
j'aimerai si tu le veux bien bénéficier de tes services , fichiers, eclairs de génie.

regiswolowiecki@hotmail.fr

merci

un novice d'excel

Répondre à wowowo

4

dezie, le 18 mar 2008 à 17:15:52

BONJOUR,
j'ai un petit souci :
j'ai une base de donnée client sur excel? J'ai enregistré les clients qui achete et renouvelle des abonnements. Mais le souci c'est que quand le client renouvelle son abo, il apparait plusieur fois dans la base de donnée. Mais je ne veu pas le supprimer car je dois garder les dates de debut et de fin de son abonement. Comment je peu faire pour garder son nom 1 fois sur une seule ligne , et faire apparaitre ses dates d'abonement. Moi j'avait pensé a une liste deroulante qui fairait paparaitre ttes les infos du client. Mais est ce possible??????J'espere que j'ai bien expliqué le problème.
J'eseper que quelqu'un poura m'aider!
merci!

Répondre à dezie

5

youhou, le 11 avr 2008 à 16:10:27

Bonjour

J'ai le même problème que Cyrilounet et malheureusement ta méthode ne marche pas pour moi. Je suis à la lettre tout ce que tas mis mais au moment de valider la formule il me mets source erroné, souhaitez vous continuer si je mets oui il maffiche la fleche de la liste deroulante mais quand j appuie dessus ca ne marche pas .je sais pas si j ai eteassez claire . Mais voia ca ne marche pas pour moi alors si quelqun a une idee de d'où bvient le problème je lui en serait reconnaissan.

Merci davance

Répondre à youhou

6

CLABEN, le 11 avr 2008 à 16:45:22

J'ai une solution - Comment te faire parvenir le Classeeur ?

Répondre à CLABEN

7

CLABEN, le 11 avr 2008 à 16:53:01

J'ai une solution - Comment te faire parvenir le Classeur ?

Répondre à CLABEN

8

youhou, le 11 avr 2008 à 21:43:25

Si tu pouvais me lenvoyer sur l'adresse suivante: nadazari@hotmail.com ca serait cool

merci encore

Répondre à youhou

9

yohann, le 17 avr 2008 à 09:57:18

Bonjour,
Serait-il possible de profiter aussi de ce fichier ???
Mon adresse : yohann09@hotmail.com

Répondre à yohann

10

Princessesaori, le 30 avr 2008 à 17:19:31

Bonjour,
Puis je aussi avoir ce fichier? Je suis dans la même galère!
Merci beaucoup par avance...
princessesaori@hotmail.com

Répondre à Princessesaori

13

michel_m, le 20 mai 2008 à 16:14:28
  • +1

A tout hasard, je signale que le tuto existe dans "astuces" de ce site...

Répondre à michel_m

14

Paradis, le 20 mai 2008 à 18:33:02

Salut
Oui c'est vrai il existe un tuto sur les listes déroulantes avec saisie automatique. je m'en suis servi.
Mais je ne vois rien sur la liste déroulante conditionnelle.
si tu as des pistes. Merci.
Pour le moment je reprends les formules pas à pas pour voir où çà coince...
C'est long ...

Répondre à Paradis

15

michel_m, le 20 mai 2008 à 19:01:00

Bonjour,

Ci joint liste en cascade avec 2 validations
http://cjoint.com/?fus33qE7Ds

liste cascade avec 1 seule validation (solution par VBA)
http://cjoint.com/?fus5ZEpkXy

les données-validation de données évitent d'avoir à gérer des erreurs dans les formules

pour la fonction INDIRECT (fonction "magique" d'Excel) regarde l'aide

Bonne soirée

Michel

Répondre à michel_m

16

cgregueusse, le 20 mai 2008 à 21:57:55

Merci pour ton astuce.
vraiment sympa

Répondre à cgregueusse

17

Paradis, le 21 mai 2008 à 09:08:51

Oui c'est vraiment sympa, Michel,

Tu as réussi avec le fichier en cascade à bien montrer la construction des plages et l'utilisation de la fonction RECHERCHE.
De même pour la fonction INDIRECT en rapport avec la 1° liste.
Il me reste à ré-utiliser cette fonction "magique" pour bien la comprendre.

En tout cas, ton exemple de fichier en cascade va me permettre de réaliser le fichier excel que je souhaite : * Mettre les données sur une feuille et créer les listes sur une autre. J'ai essayé ça marche.
Suis vraiment content.


Pour le fichier avec liste cascade avec 1 seule validation (solution par VBA), la liste reste magique.
** Cependant mettre les données sur une feuille et créer les listes sur une autre est impossible.
Modifier les lignes de VBA pour le rendre général au classeur excel doit être possible mais là je dois fouiller. Il me semble que la page des lignes VBA sont attachés à "Worksheet" et que en modifiant l'onglet en "général"....Mais là je m'avance trop...

Bonne Journée

Répondre à Paradis

18

michel_m, le 21 mai 2008 à 09:13:15

Bonjour,

IlL faut nommer les listes pour passer d'une feuille à l'autre

par ex:

ta liste est dans "A1:A30": insertion-nom -définir "plage" (ou machin) pour A1:A30

Répondre à michel_m

19

Paradis, le 21 mai 2008 à 10:07:49

Bonjour Michel,

Oui, il faut nommer les listes pour pourvoir passer les formules d'un feuille à l'autre. Tu as raison.
Sur mon message je parle du 2° classeur excel "liste_intuitive".
dans celui-ci, tu as créé une liste déroulante (Données > validation) dont la source est double. C'est là, sa magie.
ce sont : = alphabet et =serie
Le changement des 2 formules se fait grâce à une page écrite sur VBA.

C'est par là que ça coince, il me semble.
Ainsi, je ne peux mettre cette liste déroulante sur une feuille différente d'une feuille de données.
Non ?

Répondre à Paradis

21

Paradis, le 21 mai 2008 à 14:00:15

Comme quoi, tâtonner avant d'écrire c'est mieux !
Je me suis acharné et j'ai fini par reprendre ta page VBA , la copier dans un nouveau classeur et changer le nom de cellule sru cette page VBA.
Ainsi, j'ai pu utiliser la liste à double source dans une feuille distincte de la feuille de données.
Je précise que la colonne 'série' contenant le fonction recherche est sur la feuille contenant la liste à double fonction.
donc problème soulevé : résolu.

Maintenant suspens : pourrai-je mettre plusieurs listes à double fonction sur la même feuille de classeur ...

Merci Michel, ton message m'a permis d'apprendre qqchose.

Répondre à Paradis

22

michel_m, le 21 mai 2008 à 18:23:00

Re Paradis,

Pour le suspens, regarde la PJ

http://cjoint.com/?fvsobTs4eg

la technique employée est la fonction DECALER

le thème est de prendre un train qui va du Sud (Perpignan) vers le Nord (pour moi, Vienne c'est le Nord) et de trouver son heure d'arrivée

Ta gare de départ (1° validation) entraine le choix des heures de départ dans la 2° validation; le choix de la gare d'arrivée (3° validation) donne l'heure d'arrivée
les heures marquées sont des nombres bidons pour tester.
(C'est un exemple, il y a plusieurs manières de le faire, mais...)

Voili, voilou

Michel

Répondre à michel_m

23

Paradis, le 21 mai 2008 à 21:37:35

Bonsoir

Si j'ai compris comment fonctionne ce nouveau tableau http://cjoint.com/?fvsobTs4eg
avec ces nouvelles fonctions DECALER EQUIV . Je vais devoir en faire mon miel et cela va prendre plus de temps et voir si ce sont des fonctions qui peuvent me servir.
DECALER et EQUIV étaient les fonctions utilisées dans un tuto qui m'avait emmené sur une autre piste. Je vais y revenir.
Mais je renforce d'abord mes connaissances sur la formule INDIRECT

Mais j'ai été imprécis dans mon message précédent.
Le suspens est de savoir si je vais pouvoir installer 2 (et + ) listes déroulantes à double source celles qui utilisent VBAqui ont le même tableau pour objet.

Quel intérêt ? Avoir sur une même feuille des résultats différents à des endroits différents de la feuille.

Vienne pour moi c'est l'Est.

Répondre à Paradis

30

Pat, le 10 aoû 2008 à 18:59:53

Bonjour,

Pourriez vous remettre vos exemples sur le forum car la date d'expiration du fichier est atteinte.

D'avance merci beaucoup.

Patrice.

Répondre à Pat

20

michel_m, le 21 mai 2008 à 11:07:11

Okay, je pensais a la "non-vba"

Je ne sais pas (c'est un vieux truc de mon grenier) il faut que je regarde la b^te, mais certainement at home, ce soir ou ce WE.

Michel

Répondre à michel_m

24

JR2Mars, le 10 jun 2008 à 16:05:04

Bonjour, j'ai un peu le même souci, si quelqu'un pourrait m'aider, j'ai le fichier si vous voulez (voire résoudre de vous même ^^);
en fait mon opération consiste à appeler une référence de casque en liste déroulante (ou validation peu importe) et à partir de là, avoir dans une autre liste déroulante (ou validation) les accessoires disponibles pour la référence...
Please help me j'en peux plus
merci d'avance

Répondre à JR2Mars

25

lorelei, le 16 jun 2008 à 09:02:27

Bonjour,
Je me trouve confronté au même problème que cyrilouet il y a quelques mois et aie donc suivi votre échange de mails. Celà dit je ne peux ouvrir depuis mon poste professionnel les liens. J'aie également été voir les astuces mais n'aie pas trouvé la solution à mon problème. Serait-ce possible de recevoir le classeur crée par Claben par mail?
Par avance, merci
Lorelei

Répondre à lorelei

26

yohann, le 16 jun 2008 à 14:12:56

Bonjour tout le monde,
Je suis actuellement en train de travailler (moi aussi) sur les listes deroulantes conditiionnelles et me voila confronté à un petit problème qui peut être, pour vous, n´en est pas un.
Autrement dit, ma question est peut être bête : Comment hiérachiser les données contenues dans une liste déroulante conditionnelle sans avoir à ordonner les données sources ?
Autre question : comment faire en sorte de ne pas faire apparaìtre dans cette liste deroulante, les cellules vides contenues dans la liste de données sources ?
J´apprécierai recevoir une réponses...Je vous remercie.

Répondre à yohann

27

celine, le 6 jui 2008 à 15:34:34

Salut tout le monde
il me parrait que vous avez bien resolut ce problem et a mon tour j'aimerai bien savoir la solution mais j'arrive pas a ouvrir les liens du tutoriel envoyer par michel , comment je peux les voir?
merci






BE YOURSELF THERE IS ENOUGH OTHER

Répondre à celine

28

michel_m, le 6 jui 2008 à 16:18:17

Bonjour Celine
http://cjoint.com/?hgqp3FU7Uv

michel

Répondre à michel_m

45

GAGUAS, le 17 déc 2008 à 12:59:19

Bonjour Michel,

Merci de m'avoir adressé le fichier, je le regarder de très près car je suis très intéressé.

Cordialement
GAGUAS

Répondre à GAGUAS

47

Agnès, le 22 déc 2008 à 13:58:05

Bonjour,


Je suis très intéressée par cette discussion. Je gère un fichier de prêt d'archives dans Excel :

nom de l'emprunteur/service/élément prêté/type d'archive de plusieurs colonnes les propositions doivent découler d'un choix précédent. Pourriez-vous me transmettre votre fichier qui, me semble-t-il, pourra me permettre de résoudre mon problème.

Merci beaucoup, cordialement,

Agnès

Répondre à Agnès

48

michel_m, le 22 déc 2008 à 14:12:02

Bonjour,

Ci joint "boite à listes" qui regroupe quelques exemples dont certains en VBA

http://www.cijoint.fr/cjlink.php?file=cj200812/cij8NzgloV.xls

joyeux Noêl Cordialement,
Michel

Répondre à michel_m

29

celine, le 7 jui 2008 à 10:01:32

Bonjour a tous
merci michel pour votre repond super rapide:)
mais malheureusement j'arrive pas a resolut mon problem en plus j'en ai un tres grand nombre de data est ce qu'il y a la solution en VBA ?

Merci d'avance

Répondre à celine

32

, le 19 aoû 2008 à 09:29:59

Bonjour désoler de vouloir encore ce fichier mais j'aimerais profiter de la solution et la date à expirer pouvez-vous le remettre à jour merci

Répondre à jé

33

wilfried_42, le 19 aoû 2008 à 09:56:51

Bonjour

voici un fichier un peu different n'aimant pas mettre des formules dans une liste de validation, je les mets dans les noms de plage

un nom de plage : Marques, avec une formule de gestion de liste evolutive (tu peux ajourter les parques que tu veux
un nom de plage : Types, avec une formule de plage Glissante et evolutive (tu peux creer le nombre de type que tu veux) : Glissant : le plage se deplace en fonction de la valeur mise en C6

voici le lien : Lien Cjoint.com

Répondre à wilfried_42

34

wilfried_42, le 21 aoû 2008 à 18:38:55

Re:

je crois que j'ai un probleme avec le lien, je ne sais pas fare lol
http://cjoint.com/?ivsK7lCMRV

Cordialement
Wilfried

Répondre à wilfried_42

35

Flo17, le 12 oct 2008 à 15:17:22

Salut à tous,
Même problème. Je m'arrache les cheveux pour filtrer mes données dans ma deuxième liste déroulante par rapport au choix de ma première liste. Si quelqu'un pouvait m'aider à résoudre mon problème. Je n'arrive pas accéder aux liens proposés, si quelqu'un pouvait me les envoyer, j'en serais reconnaissant. Je suis ouvert à plusieurs propositions : Vba ou autres....
Merci d'avance

Répondre à Flo17

43

GAGUAS, le 16 déc 2008 à 21:40:51

Bonsoir,

Je suis intéressé par le sujet, maisl les liens ne sont plus disponibles. Est-il possible de les réactiver.

Merci d'avance

Cordialement

GAGUAS

Répondre à GAGUAS