à la recherche de formules

Résolu
DrDavidMILLER Messages postés 21 Statut Membre -  
Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour les amis fous d'Excel,
me revoilà avec une nouvelle demande de formules qui, comme d'habitude, me dépassent...

deux colonnes : B et C
B = nom de produit
C = le nombre (NB.SI) dudit produit dans un autre onglet.

Je cherche des formules :
1) =max (C1:C30) mais qui indiquera non pas le chiffre le plus grand dans la colonne C mais la cellule du produit (colonne B) en question (qui a été vendu le max.)
2) = min (C1:C30) qui fera pareil pour le produit qui a été vendu le moins, mais en ignorant les zéros (qui sont multiples...)et commencera compter le minimum à partir de 1.

Merci d'avance pour votre patience !
David

3 réponses

  1. Hydr0s Messages postés 1843 Date d'inscription   Statut Membre Dernière intervention   687
     
    Salut,

    Il faut utiliser la fonction
    RECHERCHE(valeurrecherche;plagerecherche[;resultat])

    Dans ton cas, nous recherchons le MAX de la colonne C ; dans la colonne C ; et on renvoit la valeur de la même ligne de la colonne B
    RECHERCHE(MAX(C2:C5);C2:C5;B2:B5)



    0
    1. Dr David MILLER
       
      Hello Hydr0s et merci de ta réponse.
      J'ai essayé, ça respecte correctement le principe de ta formule en ce qui concerne les plages, mais les résultats sont erronés et pour la valeur minimum le zéro n'es pas ignoré.
      Y a-t-il un moyen de t'envoyer le tableau ? J'ai mis les deux formules en couleurs
      Merci
      David
      0
  2. PHILOU10120 Messages postés 6463 Date d'inscription   Statut Contributeur Dernière intervention   835
     
    Bonjour DrDavidMILLER

    Une autre idée

    Pour le maxi

    =INDEX(B:C;EQUIV(MAX(C:C);C:C;0);1;1)
    Pour le mini

    =INDEX(B:C;EQUIV(SI(MIN(C:C)=0;1;MIN(C:C));C:C;0);1;1)

    Bonne journée

    C'est en forgeant que l'on devient forgeron. -  C'est au pied du mur que l'on voit le maçon - on apprend toujours de ses erreurs
    0
    1. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
       
      Bonjour

      et bonjour Philou
      je crois que la seconde ne fonctionnera pas dans tous les cas. elle renverra #N/A si il y a des 0 et pas de 1 dans la liste des valeurs.

      il vaudrait mieux passer par une matricielle:

      =INDEX(B:B;EQUIV(MIN(SI(C:C>0;C:C));C:C;0))

      pour trouver la valeur de B sur la ligne du mini de C hors 0

      à entrer avec la touche enter en maintenant les touches ctrl et shift enfoncées


      crdlmnt
      0
    2. PHILOU10120 Messages postés 6463 Date d'inscription   Statut Contributeur Dernière intervention   835 > Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention  
       
      Bonjour Vaucluse

      Oui Tu as raison pour le 1 que j'impose systématiquement c'est une erreur,
      Il n'y a rien qui prouve qu'il y aura un un
      Bien vu
      0
    3. Dr David MILLER
       
      Hello Philou,
      Merci de ta réponse.
      Pour le MAX, ça marche.
      J'ai repris la même formule pour le MIN, mais elle n'évite pas les zéros et choisit un zéro parmi les autres zéro...
      0
    4. Dr David MILLER > Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention  
       
      Hello Vaucluse,
      Merci de ton attention !
      Mais la réponse avec ta formule pour le MIN est identique à celle de Philou (ça donne 0 parmi d'autres zéro)
      0
    5. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453 > Dr David MILLER
       
      Ah?... z'êtes sur?

      vous avez bien entré la formule comme indiqué, c'est à dire:

      maintenir les touches ctrl et shift enfoncées et appuyer sur enter?
      voyez ici:
      https://www.cjoint.com/c/FFDldDeuWFX
      crdlmnt
      0
  3. Patrice33740 Messages postés 8400 Date d'inscription   Statut Membre Dernière intervention   1 783
     
    Bonjour,

    Formule non matricielle pour le minimum :
    =INDEX($B$2:$B$30;EQUIV(PETITE.VALEUR($C$2:$C$30;NB.SI($C$2:$C$30;0)+1);$C$2:$C$30;0))

    0