Numero de ligne ou se trouve le max

chakib24

XLDnaute Nouveau
bonjour a tous,

je me permets d'ouvrir une discussion en espérant trouver réponse à ma question!

alors pour faire simple:

j'ai un fichier excel (2003, 2007 ou 2010)
sur ce fichier j'ai 3 colonnes (A, B et C) remplis de données de la ligne 3 à 700 par expl.

Question:

j'aimerais repérer le max de la colonne B, et à partir de cette ligne jusqu'en fin de feuille trouver le min de la colonne C.

je ne sais pas si je suis clair!!!

Exemple

a b c

1380 1.942 4.982
1385 2.136 5.216
1390 2.448 5.568
1395 2.663 5.823
1400 2.335 5.535
1405 2.078 5.318
1410 2.123 5.403
1415 2.317 5.637
1420 2.515 5.875
1425 2.492 5.892
1430 2.607 6.047

dans cet exemple je voudrais par exemple repérer le max de la B (qui est 2.663), il se trouve en ligne X (1395), et le min à partir de celle ci est 5.318.

comment faire avec ou sans macro? il doit y avoir une équation simple qui repère la ligne!

merci à tous
 

mécano41

XLDnaute Accro
Re : Numero de ligne ou se trouve le max

Bonjour,

Code:
=EQUIV(MAX(B1:B11);B1:B11;0)

donne 4

ou
Code:
="B" & EQUIV(MAX(B1:B11);B1:B11;0)

donne B4

Edit : si B3 jusqu'en fin de feuille B1 à remplacer par B3 et B11 à remplacer par B65536
Met un fichier ce sera plus clair

Cordialement
 
Dernière édition:

gilbert_RGI

XLDnaute Barbatruc
Re : Numero de ligne ou se trouve le max

Bonjour

à tester

première ligne en B4

Code:
Sub Test_Max()
    Dim Cellules As Range
    Set Cellules = Range("B4:B" & Range("B65536").End(xlUp).Row)
    LaCel = Application.WorksheetFunction.Max(Cellules)
    With ActiveSheet.Range("B:B")
        Set Rng = .Find(What:=LaCel, _
                        After:=.Cells(.Cells.Count), _
                        LookIn:=xlValues, _
                        LookAt:=xlWhole, _
                        SearchOrder:=xlByRows, _
                        SearchDirection:=xlNext, _
                        MatchCase:=False)
        .Select
    End With
    Set minCellules = Range("B" & Rng.Row & ":B" & Range("B65536").End(xlUp).Row)
    LaCel2 = Application.WorksheetFunction.Min(minCellules)
   ' MsgBox LaCel2
    With ActiveSheet.Range("B:B")
        Set minrng = .Find(What:=LaCel2, _
                           After:=.Cells(.Cells.Count), _
                           LookIn:=xlValues, _
                           LookAt:=xlWhole, _
                           SearchOrder:=xlByRows, _
                           SearchDirection:=xlNext, _
                           MatchCase:=False)
        .Select
    End With
    MsgBox minrng.Offset(0, 1).Value
End Sub
 

Pièces jointes

  • Test_Max.xls
    62.5 KB · Affichages: 40
  • Test_Max.xls
    62.5 KB · Affichages: 42
  • Test_Max.xls
    62.5 KB · Affichages: 43
Dernière édition:

Statistiques des forums

Discussions
312 241
Messages
2 086 523
Membres
103 242
dernier inscrit
Patoshick