Rechercher : dans
Par :

Liste sur excel avec des critères

Dernière réponse le 1 jun 2009 à 22:34:40 Slaman, le 19 mai 2009 à 14:58:10 
 Signaler ce message aux modérateurs

Bonjour,

Sur EXCEL, je souhaiterai créer une liste sur une case ( comme lorsque on fait une validation de liste) mais uniquement dans le cas ou une condition est remplie.

Mettons que j'ai une liste dans la case A1 comprenant ABA, BCB, .... ( ça je sait faire)
Si dans la case A1 il n'y ai rien, il ne doit rien y avoir dans la case A2.
Si dans la case A1 je selctionne ABA, je souhaiterai que dans la case A2, on me propose de choisir entre ABA1, AB2 et ABA 3
Si dans la case A1, je selectionne BCB, je souhaiterai que dans la case A2, on me propose de choisir entre BCB1,BCB2... etc

Comment faire ?.. Merci pour votre aide

Configuration: Windows XP Internet Explorer 7.0

Meilleures réponses pour « Liste sur excel avec des critères » dans :
Importer ses contacts sous Outlook à partir d'Excel VoirImporter ses contacts sous Outlook à partir d'Excel Problème Comment importer une liste de contact d'Excel vers Outlook, en ne les mettant que dans une seule liste de contact, et non contact par contact ? Solution En utilisant les logiciels...
Listes déroulantes simples avec Excel VoirDans 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...

1

pilas31, le 19 mai 2009 à 18:13:08
  • +2

Bonjour,

J'ai été amené à faire un exemple pour une autre discussion, regarde si cela ne répond pas à ton problème en adaptant cet exemple :

http://www.cijoint.fr/cjlink.php?file=cj200904/cijrzz6UAa.xl­s

A+ Cordialement,

Répondre à pilas31

2

Slaman, le 19 mai 2009 à 22:23:50

A priori c'est exactement ça, mais je regarderai mieux demain à tête reposée =)

Merci

Répondre à Slaman

3

Slaman, le 25 mai 2009 à 11:50:53

J' ai réussi a utiliser cette méthode, mais deux problème se pose:

1- Lorsqu' il y a des espaces dans les données sources, Excel ne me propose pas la liste déroulante.. heuu je sait pas si je suis clair.

Pour être concret, mettons que avec ton exemple, j'écrive 4x4 avec des espaces 4 x 4, et que je lui donne un nom et une liste comme tu as fait, et bien la la liste ne se fait pas.

2- Je souhaiterai pouvoir entrer certaines données manuellement, comme par exemple lorsque j'ai choisi "véhicule", je voudrai mettre avion sans que cela soit dans la liste prédéfinie car j'ai beaucoup trop de données pour qu'elles soient toutes référencées.

Comment faire? merci =)

Répondre à Slaman

4

Raymond PENTIER, le 25 mai 2009 à 14:24:29

Salut,
Quand tu nommes une plage, tu vois bien qu'Excel refuse certains caractères comme / \ * ? . # ainsi que les espaces, qui sont remplacés par _
Pour entrer des données manuellement, ta liste prédéfinie doit commencer par une cellule vide. C'est bien, la retraite ! Surtout aux Antilles ... :-)
☻ Raymond ♂

Répondre à Raymond PENTIER

5

Slaman, le 25 mai 2009 à 14:51:03

Merci Raymond pour la réponse :)

1-oui, je vois que les espaces sont remplacés par des "_" , mais qu'est ce que je peux faire alors pour qu'il prenne quand même les noms je ne peux pas coller tout les mots.... parce que j'ai du texte comme: "Pompe à engrenage à cylindrée variable"

J'ai essayé d'ajouter une cellule vide en tête de ma liste, mais cela ne change rien, je ne peux pas entrer de données, mais je pense que me suis mal exprimé:

2-J' ai par exemple une liste de fournisseurs, je choisis mon fournisseur( colonne A), puis dans la colonne B, je choisis le type de composant ( qui change en fontion du fournisseur choisis) pui dans la colonne C, je choisis la référence (tout ça c'est fait) mais toutes il y a trop de références, je ne peux pas toutes les entrer, il y a seulement les plus "importantes", je souhaite donc que l' utilisateur puisse entrer ce qu'il souhaite si jamais la référence voulue n'y est pas.

merci ..

Répondre à Slaman

6

Raymond PENTIER, le 25 mai 2009 à 20:14:17

Salut.
Je t'ai fourni les indications que je pouvais, n'ayant pas ton fichier en main ...
Si tu ne souhaites pas le montrer à tout le monde, tu peux me l'adresser par Message Privé.
Les noms de plage (et donc de liste) ne pouvant pas être autrement que comme rappelé plus haut, il te faudrait utiliser RECHERCHEH et RECHERCHEV pour remplacer tes dénominations avec espaces par des abréviations ou des références qui serviraient aux listes déroulantes. C'est bien, la retraite ! Surtout aux Antilles ... :-)
☻ Raymond ♂

Répondre à Raymond PENTIER

7

pilas31, le 26 mai 2009 à 00:13:51
  • +1

Bonjour Slaman et Raymond,

1/Pour ton premier problème, Raymond à raison on peut légérement modifier mon exemple en ajoutant une indirection de plus en allant puiser les noms des plages dans une table à 2 colonnes avec le libéllé réél (celui que tu utilise dans ta 1° combo même avec les blancs) en 1° colonne et le nom de la plage (abrégé) en 2° colonne.

Si tu nommes cette plage de 2 colonnes "Catégorie" tu dois remplacer le champ validation de ta 2° combo avec une formule source du type =INDIRECT(RECHERCHEV(D2;Catégorie;2;FAUX))

2/ Pour ton Second problème je pense qu'il suffit que dans la fenêtre "Validation des données", dans l'onglet "Alerte d'erreur" tu décoches l'option "Quand des données non valides sont tapées". Ainsi tu peux choisir dans la liste mais aussi taper une valeur quelconque.

A+
Cordialement,

Répondre à pilas31

8

Slaman, le 26 mai 2009 à 09:34:03

Merci pilas 31, bon pour le 2em point, ça marche,ps de problème, c'est vrai que je n'y avais pas pensé.

Bon pour le premier point, j'ai plus de mal, j'ai essayé de modifier ton exemple, mais j'ai pas réussi à aboutir à quelque chose qui marche, je pensai pourtant avoir tout nomé correctement... visiblement non. Est ce qu'il serai possible que tu m'envois ton exemple avec cette modification ?

Répondre à Slaman

9

pilas31, le 26 mai 2009 à 11:34:24
  • +1

Bonjour Salman,

Voila j'ai modifié mon exemple pour illustrer le nouveau mode de fonctionnement (je pense conforme à la suggestion de Raymond). J'ai utilisé RECHERCHEH à la place de RECHERCHEV mais le principe est le même. J'ai également utilisé la fonction DECALER pour éviter de créer encore une autre zone nommée:

http://www.cijoint.fr/cjlink.php?file=cj200905/cijdSYWLHk.xl­s

A+

Remarque : Pour plus d'astuces sur les listes déroulantes regarder aussi ici :
astuce de gbinforme Cordialement,

Répondre à pilas31

10

eriiic, le 26 mai 2009 à 20:44:51
  • +2

Bonsoir tout le monde,

Je crois que j'ai trouvé une bonne solution à cette question récurrente de listes de validation en cascade.

- saisir ses listes
- copier la formule
- sélectionner les cellules des listes de validation (sauf la première, il peut y avoir autant de niveaux que l'on veut)
- menu 'données / validation...', 'Listes' et coller la formule dans 'source :' .

C'est fini, pas de plages à nommer, tous les caractères sont acceptés (même les espaces).
Il ne reste plus qu'à faire un copier/coller des cellules des listes de validation dans la feuille.

En option, pour ceux qui connaissent un peu vba, une macro qui supprime les sélections des niveaux supérieurs sur un changement.

Listes multiples en cascade.xls

eric

Répondre à eriiic

11

pilas31, le 27 mai 2009 à 01:24:28

Salut Eriiic,

C'est un travail magnifique que tu as fait. J'avoue que je tournais autour depuis longtemps sans avoir trouvé une solution aussi élégante !

A conserver...

A+ Cordialement,

Répondre à pilas31

12

Slaman, le 28 mai 2009 à 11:06:22

Bonne idée Eriiic, mais je pense que le mieux pour moi c'est d'utiliser la solution de Pilas31, car j'ai trop de données, en clair c'est comme si sur steack tu choisissai la viande, pareil pour le cassoulet et pour tout les autres... bref

Cette solution est plus "propre" mais utilisable que lorsque l'on a un petit nombre de données.

Répondre à Slaman

13

eriiic, le 28 mai 2009 à 12:16:51

Bonjour,

Cette solution est plus "propre"
Elle est surtout facile à mettre en oeuvre quelque soit le nombre de validations qui doivent se succéder.
Celle de Pilas est tout aussi propre ;-)
mais utilisable que lorsque l'on a un petit nombre de données.
Tu peux avoir 256 validations en cascade avec des listes de 65000 élément chacune si tu veux (limitation excel 2003, plus sur 2007).
C'est à partir de combien beaucoup de données pour toi ?

Mais je comprend que tu restes sur ce que tu as mis en place. C'est ta remarque sur les espaces interdits qui m'a donné le déclic (et merci pour ce déclic ;-) )pour une question qui revient régulièrement et sur laquelle je m'étais penché plusieurs sans arriver simplifier la mise oeuvre.

eric

Répondre à eriiic

14

Slaman, le 29 mai 2009 à 13:49:16

Salut

c'est que je trouvai ça plus compliqué ... et plus simple à la fois ( ahh beaucoup de clareté dans mes propos, j'aime ^^).

Bon, finalement, j'essaye d'adapter ta solution à mon problème, j'ai pour le niveau 1 une colonne d' environ 25 données, pour le niveau 2 j'ai donc 25 colonnes avec entre 20 et 40 données, prenons 30 de moyenne et donc pour le niveau 3 j' ai 750 colonnes avec entre 1 et 30 données.

M'as tu suivit ?

je ne remplirai pas les 750 colonnes pour le niveau 3, mais j'aurai besoin d' une solution pour faire "comme si".
En réalitée pour l' instant j'ai besoin de réaliser les 3 niveaux pour seulement 7 ou 8 données du niveau 1.

Je suis en train de réaliser le le 3em élément du niveau 1 et je me suis rendu compte qu'entre les colonnes BK et BL et bien je ne peux plus avoir de niveau 3, comment ça se fait ? il n'y a pourtant pas de formules qui bloquent... enfin je ne vois pas.

As-tu une solution ?

Merci beaucoup

Répondre à Slaman

15

eriiic, le 29 mai 2009 à 16:05:48

Bonjour,

Là ça va dépendre aussi de ta version excel.
Avec ma solution (plus simple, si si j'insiste ;-) ) il est prévu que toutes les listes soient sur des colonnes contigües. Soit 256 listes maxi. Ta description confirme tes propos d'hier : c'est un peu juste.
Je vais réflechir à étendre cette solution en faisant plusieurs zones de saisies et en essayant de garder cette simplicité : n'avoir que les saisies des listes à faire et tant qu'à faire préparer toutes les cellules de listes de validation pour n'avoir qu'un copier-coller et plus aucune manipulation de formules.
Tout ceci sous toute réserve...

En plus, ils annoncent du beau temps ce we aussi

eric

Répondre à eriiic

16

eriiic, le 31 mai 2009 à 14:40:41
  • +1

Bonjour,

J'ai fait les modif.

Les manip se résument maintenant à :
- saisir ses listes
- emmener la feuille des listes dans son classeur si besoin
- copier-coller les cellules de validation dans la (les) feuille(s) concernée(s).

2 versions :
pour des listes de 50 items max : Listes multiples en cascade V2.1 (50 items).xls
pour des listes de 100 items max : Listes multiples en cascade V2.1 (100 items).xls

Si tu as l'occasion de tester n'hésite pas à être le plus critique possible, même au niveau des explications.
Le but étant d'obtenir un truc simple, souple, et facile à mettre en oeuvre pour une personne peu familiarisée avec excel.

eric

Répondre à eriiic

17

eriiic, le 1 jun 2009 à 21:59:11

PS : j'ai oublié de dire le plus important : peut gérer 1250 listes sur 10 niveaux successifs de validation.

Répondre à eriiic

18

 Slaman, le 1 jun 2009 à 22:34:40

Fiou beau boulot :D !!
J'ai regardé vite fait, mais ça me parai pas mal du tout, j'essayerai réellement demain, je te tiens au courant sur les éventuelles critiques... si il y en a !

Merci encore pour t' être autant investi dans cette recherche !

Ah oui et je n'aurai besoin que de 3 niveaux, je pense, a moins que j'en utilise un 4em ... mais bon.

Répondre à Slaman
Collection CommentÇaMarche.net