Afficher nom de la colonne d'origine à la place de la valeur du résultat

Bonjour à tous,

Voici mon petit problème : j'ai 3 colonnes avec des valeurs de prix pour différents produits du commerce, les têtes de colonnes sont identifiées AUCHAN, CARREFOUR et CASINO. Je voudrais une quatrième colonne, BEST, qui m'indique sur chaque ligne de produit le nom du magasin qui propose le meilleur prix.

Actuellement la colonne BEST indique la valeur la plus basse avec min= mais je souhaiterais à la place de la valeur la plus basse le nom du magasin qui propose la valeur (prix) la plus basse.

Merci pour votre aide à ce sujet.

Nicolas.

Bonjour,

Exemple pour un tableau en A1:D25, Formule:

=SI(ET($A2<>$A1; EQUIV(MIN(FILTER($C$2:$C$25; $B$2:$B$25=$B2)); $C$2:$C$25; 0) = LIGNE()-1); INDEX($A$2:$C$25; EQUIV(MIN(FILTER($C$2:$C$25; $B$2:$B$25=$B2)); $C$2:$C$25; 0); 1); "")

https://docs.google.com/spreadsheets/d/1WPb-K681d79nSFTuCGjCBhZyTcI62PxJUeAmLnFaUQs/edit#gid=0

Cdlt

Bonjour,

Avec un simple QUERY (à copier vers le bas):

=query(transpose({$A$1:$C$1;A2:C2});"select Col1 order by Col2 desc limit 1")

Cordialement,

Fil.

Pour gérer les prix identiques :

=SI(ET(query(transpose({$A$1:$C$1;A2:C2});"select Col2 order by Col2 desc limit 1")=query(transpose({$A$1:$C$1;A2:C2});"select Col2 order by Col2 desc limit 1 offset 2 ");query(transpose({$A$1:$C$1;A2:C2});"select Col2 order by Col2 desc limit 1")=query(transpose({$A$1:$C$1;A2:C2});"select Col2 order by Col2 desc limit 1 offset 1 "));JOIN(", ";query(transpose({$A$1:$C$1;A2:C2});"select Col1 order by Col2 desc limit 1");query(transpose({$A$1:$C$1;A2:C2});"select Col1 order by Col2 desc limit 1 offset 1 ");query(transpose({$A$1:$C$1;A2:C2});"select Col1 order by Col2 desc limit 1 offset 2 "));SI(query(transpose({$A$1:$C$1;A2:C2});"select Col2 order by Col2 desc limit 1")=query(transpose({$A$1:$C$1;A2:C2});"select Col2 order by Col2 desc limit 1 offset 1 ");JOIN(", ";query(transpose({$A$1:$C$1;A2:C2});"select Col1 order by Col2 desc limit 1");query(transpose({$A$1:$C$1;A2:C2});"select Col1 order by Col2 desc limit 1 offset 1 "));SI(query(transpose({$A$1:$C$1;A2:C2});"select Col2 order by Col2 desc limit 1")=query(transpose({$A$1:$C$1;A2:C2});"select Col2 order by Col2 desc limit 1 offset 2 ");JOIN(", ";query(transpose({$A$1:$C$1;A2:C2});"select Col1 order by Col2 desc limit 1");query(transpose({$A$1:$C$1;A2:C2});"select Col1 order by Col2 desc limit 1 offset 1 ");query(transpose({$A$1:$C$1;A2:C2});"select Col1 order by Col2 desc limit 1 offset 2 "));query(transpose({$A$1:$C$1;A2:C2});"select Col1 order by Col2 desc limit 1"))))


Merci beaucoup Filoche.

Je suppose que je n'ai pas donné assez de détail pour que tu puisses adapter ta formule à mon tableau. Les 3 colonnes de prix ne sont pas consécutives, il y en a d'ailleurs 5 de colonnes de prix. Est-ce que tu pourrais m'aider plus précisément avec le lien du projet : https://docs.google.com/spreadsheets/d/1Jm5N4Vog2pyAAh_6v9DhykxAxxr2nD2DEE2K80LzX5w/edit?usp=sharing ?

J'ai copié/collé ta formule mais je reçois une erreur même en essayant de l'adapter à la situation.

Merci par avance.

Arturo83, merci également pour ta réponse mais de la même façon je n'ai pas su l'adpater à la configuration de ma feuille de calcul. J'ai mis le lien vers le projet dans mon précédent message, si le cœur t'en dit.

Bonjour,

Essayez ceci en R3:

=INDEX($B$1:$P$1000; 1; EQUIV(MIN(D3:P3); D3:P3; 0))

Cdlt

Merci Arturo, je viens d'essayer et le résultat est une case vide, pas d'erreur affichée, simplement la case reste vide.

Bonjour,

La solution d'Arturo fonctionne très bien !

Cordialement,

Fil.

Effectivement cela fonctionne. J'ai changé le format du poids passant de grammes à kilo (1000 >> 1,000) et le format du prix au kilo (1,5 >> 1500), est-ce que cela pourrait expliquer le problème ?

Tu peux éditer directement mon fichier ici si tu veux : https://docs.google.com/spreadsheets/d/1XZrDPZY98WNHHQJvaFOdAFmvjOcwc-PUrYgTMa_1nOA/edit?usp=sharing

Je suis perplexe...

Seule la ligne 35 affiche un résultat : AUCHAN. Sa particularité est que seule la colonne AUCHAN est renseignée pour ce produit. La ligne 86 n'a également qu'un prix renseigné, celui de CASINO mais la cellule reste vide dans BEST...

Apparemment, c'est un problème de format.

Si on met ton tableau au format " TEXTE BRUT ", ça à l'air de marcher...

J'ai modifié le format dans ta feuille...

J'ai vu merci beaucoup pour ton aide, c'est parfait maintenant. J'ai encore du boulot sur ce projet mais je créerais d'autres discussions pour ces sujets précis. Merci beaucoup à tous les deux !

Rechercher des sujets similaires à "afficher nom colonne origine place valeur resultat"