Sortir la valeur mini dans un choix multiple...

Signaler
Messages postés
50
Date d'inscription
lundi 6 mars 2006
Statut
Membre
Dernière intervention
29 novembre 2010
-
Messages postés
50
Date d'inscription
lundi 6 mars 2006
Statut
Membre
Dernière intervention
29 novembre 2010
-
Bonjour,
le titre du sujet n'est peut-être pas très clair mais c'est plus simple à expliquer qu'à résumer dans un titre....

dans excel j'ai par exemple le tableau suivant :

 a       b       c       d       a       e       f       g       h       h       i       b 
55     33     66     41     16     5       47     23     59    11    18     21

en utilisant les fn =INDEX( ; EQUIV(....))
j'obtiens

 a     b     c     d     e    f      g     h     i
55   33   66   41    5   47   23   59   18

or je cherche à obtenir la valeur mini quand il y a plusieurs valeurs possibles....
c-à-d :
 a     b     c     d    e    f      g     h     i
16   21   66   41   5   47   23   11   18

est-ce possible sans passer par une macro ?

merci du coup de main

Stardust

10 réponses

Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
19
Ça dépend comment sont placées les données, mais il existe une fonction Excel
Petite.Valeur

Disons que tu as plusieurs données dans la colonne A
=PETITE.VALEUR(A1:A10;1)
te retournera la plus petite valeur dans ce Range

Mais je ne sais pas si ça peut convenir dans ton cas... (?)

MPi
Messages postés
50
Date d'inscription
lundi 6 mars 2006
Statut
Membre
Dernière intervention
29 novembre 2010

Bonjour MPi,
merci .
je ne crois pas que cela soit la réponse :
en effet, INDEX(EQUI) va me sortir la 1° valeur qu'il rencontre et pas la plus petite quand plusieurs valeurs sont associées à la valeur recherchée...
(je sais pas si je suis clair là.....)
peut-être y a une autre combinaison que INDEX(EQUIV) mais je la connais pas....

je renouvelle mon "help !!!!!"
Messages postés
73
Date d'inscription
mardi 10 avril 2001
Statut
Membre
Dernière intervention
4 mars 2009

Salut,

Tiens, si ca peut t'aider....

    Dim i As Integer
    Dim iValMin As Integer
   
    iValMin = 32000
   
    'Ici tu as 12 valeurs...
    For i = 1 To 12
        If Cells(1, i) < iValMin Then
            iValMin = Cells(1, i)
        End If
    Next
   
    MsgBox "Valeur min: " & iValMin

Fred.
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut,
Je ne sais pas si cela peu t'aider (étant donné que tu ne veux pas passer par une macro) mais il y a peu de temps il a eu cette discution
C'était l'inverse qu'il cherchait à faire = > trouver les plus grandes. Mais peu être qu'en remplacant la ligne adéquat par celle proposée par  [auteurdetail.aspx?ID=6078 MPi] cela marchera sans trop modifier de chose.

@+: =89254 Ju£i?n
Pensez: Réponse acceptée
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Bonjour,

je me demande si'il ne faudrait pas commencer par la définition que donne à "tableau"    Stardust31  quand il écrit :

dans excel j'ai par exemple le tableau suivant :

 a       b       c       d            e       f       g            h       i       b 
55     33     66     41     16     5       47     23     59    11    18     21

comment tout celà est-il précisément disposé sur sa feuille ?
A défaut de le savoir, ce sera un dialogue de sourds, à mon avis ...
Messages postés
73
Date d'inscription
mardi 10 avril 2001
Statut
Membre
Dernière intervention
4 mars 2009

Je suis d'accord avec JM,


mon exemple marche si t chiffres sont sur la première ligne et de la première à la 12ème colonne.


 
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Eh oui !
Et ma remarque mérite quelques explications :
1) dès lors que Stardust31 précise qu'il ne veut pas utiliser une macro, nous ne sommes plus en VBA mais en Excel
2) je n'ai pas EXCEL, mais vois qu'il possède une fonction PETITE.VALEUR qui extrait la plus petite valeur d'un "range"
3) si le "range" est facile à déterminer lorsque tout se trouve à la suite, sur plusieurs lignes, dans une même colonne, (par exemple une colonne sous "a", etc...) il en va bien différemment si les a, b, etc... sont disposés de facçon répétitives sur la même ligne ! et là :
- il serait déjà assez fastidieux de définir un "range" si chaque lettre (a,b,c, ...) avait une position fixe et connue
- il serait encore plus dur de définir ce "range" si l'on ne connaissait pas à l'avance ces positions.
et alors ?
Comme je l'ai dit je ne connais pas du tout Excel mais entrevoit assez facilement que la chose serait impossible à moins que :
- Excel ne possède par ailleurs une fonction genre "WHERE" capable de lire où l'on aurait "a" (par exemple) sur la ligne, etc...
- Il y ait ensuite la possibilité de faire une "imbrication" de "WHERE" et de "PETITEVALEUR" assez fastidieuse...(et encore : si possible !)

Voilà
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
26
Je vais peut-être dire maintenant une bêtise (je ne connais absolument pas EXCEL) :

si les lettres a, b, c, etc... sont frappées sur une ligne et que des chiffres sont frappés "en regard" sur la ligne au-sessous.

placer quelque part sur sa feuille des "signets" ayant pour noms ces lettres et, à chaque frappe d'un chiffre : lire la lettre qui se trouve "au dessus" et abonder le signet dont le nom correspond à cette lettre. Perfectionner au besoin, s'il existe en plus la possibilité d'utiliser une fonction telle que le signet ne serait "abondé" que si la valeur nouvelle est plus petite que la valeur déjà là...

in fine : lire alors chaque signet.


 


Il est fou, jmf ...
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
19
Stardust31,
comme il a été dit par jmf et appuyé par fred.toto, peux-tu indiquer clairement la façon dont sont disposées tes données ?
Est-ce que c'est exactement comme ton exemple ? i.e. des lettres à la volée sur une ligne, qui peuvent se répéter, et des valeurs sous ces lettres sur une 2e ligne ?

MPi
Messages postés
50
Date d'inscription
lundi 6 mars 2006
Statut
Membre
Dernière intervention
29 novembre 2010

MPi,
c'est exactement cela :
une 1°ligne avec du texte dans les cellules, texte qui peut être identique dans différentes cellules
et en dessous une 2° ligne avec des nombres...
je cherche à extraire la valeur mini pour le texte correspondant ...

mes neurones ont fumés... mais j'ai fini par trouver :
=min(index(...;equiv(....));index(...;equiv(....));.....)
il faut que je me "débrouille" de telle manière que dans chaque zone définie par index(...;equiv(....)), il n'y ai pas de doublon...
OK, c'est lourdo mais je sais pas faire mieux sans macro.
en tout cas, merci du coup de pouce

Stardust