Filtrer une multitude de cellules pour limiter la réponse

Résolu/Fermé
Zafra51 Messages postés 3 Date d'inscription lundi 17 mars 2014 Statut Membre Dernière intervention 19 mars 2014 - 17 mars 2014 à 21:07
Raymond PENTIER Messages postés 58652 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 19 septembre 2024 - 21 mars 2014 à 03:03
Bonjour,

Actuellement étudiant en licence, je me suis mis en tête de créer un outil excel pour mon projet tutoré, ayant très peu de connaissances, je rencontre beaucoup de difficultés.

Voilà, le problème est par rapport à ce tableau (
exemple.PNG
). Le but de celui-ci est d'aider l'utilisateur à choisir les bons produits parmi des membranes frein ou pare-vapeurs (REFLEX, FOL PVB, SPARXX M1...).

La tableau fonctionne ainsi:
-pour chaque question, l'utilisateur peut choisir sa réponse (souvent au nombre de 2 par question: Oui ou Non?)
-par rapport à sa réponse: une liste de membranes apparaît.
-chaque question est un critère important pour déterminer la membrane.

Ce que je voudrais:
Dans la cellule de couleur rouge E15 doit apparaître une solution qui prend en compte tous les critères, il doit donc restreindre le choix pour l'utilisateur.

Exemple:
Dans cette image (
exemple2.PNG
), on peut voir que j'ai une multitude de membranes par rapport à mes réponses.
Dans la case rouge, le résultat qui doit apparaître est "REFLEX-SPARXX M1-FOL PVB" car ce sont les seules membranes communes à toutes les réponses.

Exemple2:
exemple.PNG
Pour ce cas là, malheureusement, aucune membrane ne correspond, je veux donc dans la case rouge "aucune membrane".

Ce que j'ai pensé faire, c'est créer un filtre dans la case rouge qui repère le texte commun (exemple, il voit REFLEX et SPARXX M1 dans chaque ligne de la colonne CHOIX, donc il va me renvoyer ces 2 membranes dans la case rouge) sachant que cette liste change en fonction de mes réponses.L'idée à chaque fois est de restreindre le nombre de membranes. Bien sûr si il ne trouve aucun texte commun, je veux qu'il m'affiche "aucune membrane".
Est-ce possible de créer ce genre de filtre associé à une fonction "SI" (la fonction "SI" dans le cas où il y a aucune membrane correspondante)? J'ai beau chercher ou lire des tutoriels, je ne sais comment procéder :(
A voir également:

7 réponses

Raymond PENTIER Messages postés 58652 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 19 septembre 2024 17 198
18 mars 2014 à 04:09
Bonjour.

1) Tu annonces des images, mais tu as oublié de les joindre.
Il faut passer par https://www.cjoint.com/ pour créer un lien, que tu reviens coller ici.

2) De simples images ne nous aideront pas vraiment à étudier un problème ; nous préférerions le fichier Excel lui-même.

3) En me basant sur ton laïus, j'ai bien peur que, pour un débutant comme tu te définis toi-même, tu ne sois allé attaquer un sacré gros morceau ... En tout cas, on ne mélange pas les outils Tri ou Filtre avec les fonctions SI ou autre !

Cordialement.
0
Zafra51 Messages postés 3 Date d'inscription lundi 17 mars 2014 Statut Membre Dernière intervention 19 mars 2014
18 mars 2014 à 13:39
Merci pour votre remarque, je n'ai pas fais attention qu'il manquait les images.
Je joins mon fichier excel, ce sera en effet plus pratique.
https://www.cjoint.com/?DCsnH7MLCme

Oui, je le reconnais, c'est trop ambitieux pour moi. Je pensais que ce serait plus accessible avant de commencer, j'ai les idées mais pas les compétences.
Alors depuis, on m'a reconduis vers libre office base puisque finalement mon projet tutoré s'apparente à une base de donnée, mais là encore une fois, après avoir créer mes tables, je ne sais quoi en faire...
0
Raymond PENTIER Messages postés 58652 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 19 septembre 2024 17 198
19 mars 2014 à 00:04
Pas évident, ton fichier !
Pour faciliter la lecture, la compréhension et l'éventuelle mise à jour de tes formules, il faut les alléger. Ainsi en E7 la formule
=SI(D7="Isolant fermé à la migration de la vapeur d'eau (synthétique...) ou non capillaires (minérales)";(D203&"-"&E203&"-"&F203&"-"&G203&"-"&H203&"-"&I203)&CAR(10)&(K203);( D203&"-"&E203&"-"&F203&"-"&G203&"-"&H203&"-"&I203)&CAR(10)&(J203)&CAR(10)&(K203&"-"&L203&"-"&M203&"-"&N203)&CAR(10)&(O203&"-"& P203&"-"& Q203&"-"&R203&"-"&S203&"-"&T203))
pourrait s'écrire très avantageusement
=SI(D7=AA8;(D203&"-"&E203&"-"&F203&"-"&G203&"-"&H203&"-"&I203)&CAR(10)&(K203);( D203&"-"&E203&"-"&F203&"-"&G203&"-"&H203&"-"&I203)&CAR(10)&(J203)&CAR(10)&(K203&"-"&L203&"-"&M203&"-"&N203)&CAR(10)&(O203&"-"& P203&"-"& Q203&"-"&R203&"-"&S203&"-"&T203))
et tu pourrais éliminer les parenthèses superflues
=SI(D7=AA8;D203&"-"&E203&"-"&F203&"-"&G203&"-"&H203&"-"&I203&CAR(10)&K203;D203&"-"&E203&"-"&F203&"-"&G203&"-"&H203&"-"&I203&CAR(10)&J203& CAR(10)&K203&"-"&L203&"-"&M203&"-"&N203&CAR(10)&O203&"-"&P203&"-"&Q203
&"-"&R203&"-"&S203&"-"&T203)
0
Raymond PENTIER Messages postés 58652 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 19 septembre 2024 17 198
Modifié par Raymond PENTIER le 19/03/2014 à 00:40
Dans le même ordre d'idée, comme tu as saisi en AA7:AA24 les listes qui servent aux listes déroulantes en D7:D13 tu pourrais aussi bien saisir en AB les éléments de CHOIX ; par exemple
=D203&"-"&E203&"-"&F203&"-"&G203&"-"&H203&"-"&I203&CAR(10) en AB7
=K203&"-"&L203&"-"&M203&"-"&N203&CAR(10) en AB8
=O203&"-"&P203&"-"&Q203&"-"&R203&"-"&S203&"-"&T203&CAR(10) en AB9
ce qui permettrait d'écrire en E7 une formule très "light"
=SI(D7=AA8;AB7&K203;AB7&J203&CAR(10)&AB8&AB9)
C'est bien, la retraite ! Surtout aux Antilles ... :-)
☻ Raymond ♂
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Raymond PENTIER Messages postés 58652 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 19 septembre 2024 17 198
19 mars 2014 à 02:16
Zafra51, il y a certainement de meilleures approches que la mienne, mais malgré tout mon bidouillage fonctionne : Je ne pourrais pas le détailler ici, mais tu examineras le tableau C211:T220 de mon fichier https://www.cjoint.com/c/DCtcmHs2Nxt
J'ai utilisé la fonction TROUVE dans les lignes 212 à 218 pour extraire les éléments de choix énumérés en ligne 197 ; la ligne 220 permet de concaténer successivement ces extractions en ajoutant un tiret de séparation.
La cellule finale T220 est le résultat cherché, qu'on affichera en E15.

Cordialement (et merci pour l'exercice !).
0
Zafra51 Messages postés 3 Date d'inscription lundi 17 mars 2014 Statut Membre Dernière intervention 19 mars 2014
19 mars 2014 à 14:10
Bonjour,

Je vous remercie beaucoup, en plus vous avez dû y passer du temps à déchiffrer et à résoudre mon tableur qui est très brouillon.
Je suis impressionné, il y a pas mal de fonctions que je découvre en regardant le nouveau fichier. Je crois avoir compris leur utilité (excepté la fonction INDIRECT: pourquoi ce sont les cellules $C qui sont liés et pas ceux de la colonne E) mais faut y penser pour les mettre en application, c'est beaucoup de tableaux et de liens indirects.
Je suis en train de me former sur libre office base qui est plus adapté à ma base de donnée qui va ensuite se compliquer quand je vais passer à la partie étanchéité à l'air avec la multitude de ruban adhésif.
Je garde précieusement votre fichier au cas où je fais marche par rapport à base :)
Encore merci!

Cordialement
0
Raymond PENTIER Messages postés 58652 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 19 septembre 2024 17 198
21 mars 2014 à 03:03
Salut.

D'une manière générale (car il y a des exceptions et des cas particuliers), on choisit les tableurs (Excel ou Calc) quand il y a beaucoup de calculs, et obligatoirement quand il y a des graphiques ; on va préférer les gestionnaires de bases de données (Access ou Base de données) quand il y a beaucoup de fiches, de champs, et qu'on aura à réaliser divers types de regroupements et de sous-ensembles, ou qu'on voudra éditer des listes et des requêtes.

Toujours d'une manière générale, il est plus facile d'appréhender un tableur qu'une base de données, et plus rapide de pouvoir en tirer parti efficacement.
0