Rechercher une ligne et inscrire toutes les informations de cette ligne dans une case

lrnt

XLDnaute Nouveau
bonjour,

Bien que connaissant les fonctions recherchev et l'outil &, je ne trouve pas la solution à mon problème

J'ai une liste de plusieurs plats et j'ai coché en face de chaque plat les ingrédients nécessaires.
Comment faire apparaître, sur une fiche, le plat avec les ingrédients?
Merci
 

Pièces jointes

  • recettes.xlsx
    11.8 KB · Affichages: 53

Odesta

XLDnaute Impliqué
Re : Rechercher une ligne et inscrire toutes les informations de cette ligne dans une

Bonjour

Une proposition
Code:
=SI(GRANDE.VALEUR(SI(DECALER($C$2:$J$2;EQUIV($O$1;$A$3:$A$5;0);0)="X";100-COLONNE($C:$J);0);LIGNE()-LIGNE($2:$2))=0;"";INDEX($C$1:$J$1;1;-COLONNES($A:$B)+100-(GRANDE.VALEUR(SI(DECALER($C$2:$J$2;EQUIV($O$1;$A$3:$A$5;0);0)="X";100-COLONNE($C:$J);0);LIGNE()-LIGNE($2:$2)))))
Cdt

Olivier

EDIT : avec la pieèce jointe, il y a peut-etre de changement à cause de ma version 2003
NOTA : j'ai défusionné la cellule. Je vous laisse le soin de refaire selon le besoin
 

Pièces jointes

  • IRNT_recettes.xlsx
    12.2 KB · Affichages: 52
Dernière édition:

tototiti2008

XLDnaute Barbatruc
Re : Rechercher une ligne et inscrire toutes les informations de cette ligne dans une

Bonjour lrnt,

Dans la mesure où tes ingrédients sont un nombre limité, tu peux t'en sortir avec le &
Mais dès que tu ajouteras un nouvel ingrédient, il faudra changer la formule
Sinon, on peut passer par une fonction personnalisée VBA pour concatener, mais il n'y a pas de formule qui concatene le contenu d'une plage de taille variable

Edit : Bonjour Olivier
 

lrnt

XLDnaute Nouveau
Re : Rechercher une ligne et inscrire toutes les informations de cette ligne dans une

bonjour Odesta

Après qq jours de vacances et du temps de déchiffrage de votre formule, je voudrais la faire évoluer

=SI(GRANDE.VALEUR(SI(DECALER($C$2:$J$2;EQUIV($O$1;$A$3:$A$5;0);0)="X";100-COLONNE($C:$J);0);LIGNE()-LIGNE($2:$2))=0;"";INDEX($C$1:$J$1;1;-COLONNES($A:$B)+100-(GRANDE.VALEUR(SI(DECALER($C$2:$J$2;EQUIV($O$1;$A$3:$A$5;0);0)="X";100-COLONNE($C:$J);0);LIGNE()-LIGNE($2:$2)))))

je n'ai pas forcément que des "X", je peux avoir d'autres lettres
Comment reprendre ta formule en ajoutant ="L" ou="S" ou <>"O"
Merci encore
 

Pièces jointes

  • recettes 01.xlsx
    203.6 KB · Affichages: 49

Odesta

XLDnaute Impliqué
Re : Rechercher une ligne et inscrire toutes les informations de cette ligne dans une

Bonjour

Alors le plus simple va être d'attaquer par le VBA. Car cela te permettra de récupérer recettes et élements bien plus facilement.

Quels sont tes souhaits exactes ? (réfléchir en terme "métier" et pas en terme excel : par exemple "il faut que je puisse récupérer une liste de tous les ingrédient de ma recette" "il faut que je puisse récupérer une liste des toutes les recettes comportants les ingrédients suivant" ect ect)
Ensuite, nous travaillerons à décortiquer les difficulter des souhaits en éléments simples (boucles, condition, boite de saisie, fonction, ect...)


Cdt
O
 

lrnt

XLDnaute Nouveau
Re : Rechercher une ligne et inscrire toutes les informations de cette ligne dans une

Bonjour Odesta

Je connais mes limites.
La formule est déjà compliquée. De là à faire de la programmation VBA, j'en suis bien incapable.
Je te remercie encore pour l'aide apportée
Cordialement
Lrnt
 

Odesta

XLDnaute Impliqué
Re : Rechercher une ligne et inscrire toutes les informations de cette ligne dans une

Je te rassures, les formules sont 10 fois plus compliquer que le VBA !!! Il ne faut pas avoir peur de coder car cela ouvre des portes magiques... et puis il y a de nombreuse personnes pour t'aider sur le site.
Le "secret" c'est la décomposition en problèmes simples. car un problème simple trouvera une solution simple. Et certe, l'ajout de ces problèmes et solutions sera "complexe" mais pas "compliqué". Et personnellement, je tire une certain fierté quand un petit programme fonctionne bien !
 

Discussions similaires

Statistiques des forums

Discussions
312 500
Messages
2 089 010
Membres
104 004
dernier inscrit
mista