XL 2016 Trouver colonne d'une valeur minimum

Phillip

XLDnaute Occasionnel
Bonjour,

Je souhaite, par macro ou formule, trouver la valeur minimum dans une ligne, et dans une colonne à droite, mettre le nom du joueur qui a eu ce minimum de points.

Je tourne en rond, et me mélange les index et les equiv...

Quelqu'un peut-il m'aider ?

Fichier exemple joint

Merci

Cordialement
 

Pièces jointes

  • testmin.xlsm
    18.7 KB · Affichages: 8

job75

XLDnaute Barbatruc
Que faut-il indiquer si 2 ou 3 joueurs ont le même score ?
On peut concaténer les noms, formule matricielle en F2 :
Code:
=INDEX($1:$1;PETITE.VALEUR(SI(B2:D2=MIN(B2:D2);COLONNE(B2:D2));1))&SIERREUR(", "&INDEX($1:$1;PETITE.VALEUR(SI(B2:D2=MIN(B2:D2);COLONNE(B2:D2));2));"")&SIERREUR(", "&INDEX($1:$1;PETITE.VALEUR(SI(B2:D2=MIN(B2:D2);COLONNE(B2:D2));3));"")
à valider par Ctrl+Maj+Entrée.
 

Pièces jointes

  • testmin.xlsm
    15 KB · Affichages: 3

job75

XLDnaute Barbatruc
Maintenant avec une fonction VBA c'est assez simple :
VB:
Function Elimine(joueurs As Range, valeurs As Range, sep As String) As String
Dim mini, i, a(), n
mini = Application.Min(valeurs)
For i = 1 To valeurs.Count
    If valeurs(i) = mini Then
        ReDim Preserve a(n) 'base 0
        a(n) = joueurs(i)
        n = n + 1
    End If
Next
If n Then Elimine = Join(a, sep)
End Function
Le code doit être placé impérativement dans un module standard.

Formule en F2 :
Code:
=Elimine(B$1:D$1;B2:D2;", ")
 

Pièces jointes

  • testmin VBA.xlsm
    17 KB · Affichages: 1

Discussions similaires

Réponses
30
Affichages
1 K

Statistiques des forums

Discussions
311 733
Messages
2 082 015
Membres
101 870
dernier inscrit
Dethomas