ListeS déroulanteS dépendanteS de la même hiérarchie

Résolu/Fermé
cestsupergenial Messages postés 17 Date d'inscription mercredi 25 mai 2016 Statut Membre Dernière intervention 13 février 2017 - 25 mai 2016 à 00:29
cestsupergenial Messages postés 17 Date d'inscription mercredi 25 mai 2016 Statut Membre Dernière intervention 13 février 2017 - 26 mai 2016 à 19:29
Bonjour à tous,

Je souhaite faire sur Excel 2010, un formulaire à choix multiples pré-remplis en cascade, qui s'affine au fur et à mesure des champs.
J'ai créé mes tables, et mes premières conditions dépendantes en cascade, mais je me heurte maintenant à un problème.
En effet, j'ai deux listes indépendantes entre elles (de rang 2) que je souhaite lier à une autre, plus importante hiérarchiquement (rang 1).
Si pour la première tout se passe bien, quand je procède de la même manière avec la seconde, ça ne fonctionne pas, puisque le nom de l'objet de rang 1 est déjà pris par la première liste.
Voici un exemple de ce que je souhaiterai pour être plus clair :
une liste déroulante de marques automobiles (Peugeot, Citroën, ...)
Après la sélection de la marque, je peux choisir un modèle (pour Peugeot, 103, 205,...)
Là, ça va. Ça se passe maintenant.
Pour un modèle donné, il existe plusieurs configurations. Il peut y avoir un moteur 10CV et des pneus 17 pouces, ou 10CV et 21 pouces, ou bien 15CV et 17 pouces.
J'aimerais pouvoir choisir ces deux paramètres (puissance et diamètre) pour chaque véhicule, sachant que les puissances offertes par Peugeot ne sont pas les mêmes que celles d'Audi (idem pour les pneus).
Je serais extrêmement soulagé que l'un de vous puisse m'apporter une aide à la résolution de ce problème.
Merci beaucoup !
PS: tous les chiffres fournis ici sur les automobiles sont faux, c'est un exemple.

4 réponses

Raymond PENTIER Messages postés 56850 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 2 décembre 2022 17 181
25 mai 2016 à 01:20
 1) Tu vas dans https://www.cjoint.com/ 
2) Tu cliques sur [Parcourir] pour sélectionner ton fichier (8192 Ko maxi)
3) Tu défiles vers le bas pour cliquer sur le bouton bleu [Créer le lien Cjoint]
4) Au bout de quelques secondes la deuxième page s'affiche, avec le lien en gras ; tu le sélectionnes et tu fais "Copier"
5) Tu reviens dans ta discussion sur CCM, et dans ton message de réponse tu fais "Coller".
=>Voir la fiche https://www.commentcamarche.net/faq/29493-utiliser-cjoint-pour-heberger-des-fichiers

0
cestsupergenial Messages postés 17 Date d'inscription mercredi 25 mai 2016 Statut Membre Dernière intervention 13 février 2017
25 mai 2016 à 20:47
Voilà mon fichier, concernant en réalité une sélection d'équipements en fonction de la puissance et des RPM (rotation par minute)
https://www.cjoint.com/c/FEzsTatGWFc
Merci d'avance !
0
Raymond PENTIER Messages postés 56850 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 2 décembre 2022 17 181
26 mai 2016 à 03:26
Salut.

1) J'ai bien failli ne pas ouvrir ton fichier, puisqu'il est enregistré en xlsm, et qu'il est donc censé contenir des macros.
Ne pratiquant pas VBA, je n'ouvre d'habitude aucun fichier en xlsm ...
2) Je n'ai pas compris l'utilité de la feuille 'test' (qui semble un clône de 'datas') ...
3) "quand je procède de la même manière avec la seconde, ça ne fonctionne pas, puisque le nom de l'objet de rang 1 est déjà pris par la première liste" :
- Dans la feuille 'selección' la cellule C3 te permet de choisir un item de la liste déroulante "Equipment_Category" ; la cellule D3 te permet de choisir un item de la liste déroulante dont le nom vient d'être affiché en C3. C'est ce que te permet le tableau B2:Q17.
- La cellule E3 te permet de choisir un item dans une liste portant le nom affiché en D3 ; il y en a 30, que tu as disposées dans la plage A20:K40. Et cela marche parfaitement !
- Mais si tu veux utiliser en F3 une liste déroulante différente, il faut tricher un peu, en créant 30 autres listes, dont les noms sont formés des 30 premiers noms auxquels on accole un caractère autorisé, par exemple "²". Ainsi la source de ta liste déroulante de cellule en F3 sera
=INDIRECT(Eq_type&"²"). La même technique sera employée en G3, par exemple en accolant le caractère "ç" pour 30 autres listes, et avec la source =INDIRECT(Eq_type&"ç").

Cela peut sembler compliqué, mais tu verras que c'est assez simple à réaliser ...

Amicalement.
0
Vaucluse Messages postés 26495 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 8 avril 2022 6 285
26 mai 2016 à 08:13
Bonjour
voyez si ce modèle peut vous aider àn organiser vos données
https://www.cjoint.com/c/FEAgmXd7zcA
crdlmnt
0
cestsupergenial Messages postés 17 Date d'inscription mercredi 25 mai 2016 Statut Membre Dernière intervention 13 février 2017
26 mai 2016 à 19:29
Merci beaucoup à tous les deux !
@Raymond, je n'avais pas pensé à ta solution, elle est plutôt élégante et fonctionne très bien.
Entre temps j'y ai un peu réfléchi et j'ai trouvé une autre méthode de résolution, qui fonctionne mais qui ne laisse pas la même liberté : en effet, j'ai lié les RPM à la puissance par une relation de dépendance ( du même type que pour tous les onglets précédents). Ainsi, chaque puissance (qui dépend du type) à un choix de vitesse qui lui ai associé, et ce ne sont plu deux variables indépendantes.
Le seul inconvénient est que ça nécessite de créer encore beaucoup de listes pour des noms de vitesses qui reviennent très fréquemment (j'ai 32 listes qui contiennent la valeur "all" pour les RPM, quand j'aurais pu n'en avoir qu'une seule par type.
En tout cas, merci de votre aide !
0