Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

dernier max d'une colonne

candice**

XLDnaute Nouveau
Bonjour,

J'aurais voulu savoir comment faire pour trouver la dernière avec max d'une colonne je m'explique j'ai une colonne de plusieurs valeurs ou il y a plusieurs fois les même je voudrais donc trouver le dernier max de cette colonne.

Si quelqu'un à une réponse je suis preneuse.

Merci
 

xUpsilon

XLDnaute Accro
Bonjour,

En VBA, à inclure dans un module (en supposant que tes valeurs soient stockées dans la colonne A et commencent à la ligne 1 :
VB:
Dim a, Lig, i as Integer

For i = 1 to Range("A1").End(xlDown).Row
    If Range("A" & i)>= a then
        a = Range("A" & i)
        Lig = i
    End if
Next i
MsgBox "La valeur max est " & a & "à la ligne " & Lig

Bonne continuation
 

Hasco

XLDnaute Barbatruc
Repose en paix
Bonjour,

Avec les valeurs en A1:A32, n° de ligne de la dernière valeur max:=AGREGAT(14;6;LIGNE(A1:A32)/(A1:A32=MAX(A1:A32));1)
Pour avoir la valeur correspondante : =INDEX(A1:A32;AGREGAT(14;6;LIGNE(A1:A32)/(A1:A32=MAX(A1:A32));1))
Mais dans ce dernier cas MAX(A1:A32) le fait tout aussi bien
cordialement
 

xUpsilon

XLDnaute Accro
Re le fil, Bonjour Roblochon,

Effectivement, sans vba, tu peux trouver facilement, mais la question devient alors si tu cherches la dernière plus grande valeur (la plus grande valeur tout court du coup), ou la ligne de la dernière plus grande valeur.

Bonne continuation
 

patricktoulon

XLDnaute Barbatruc
bonjour
sinon fonction large combinée a find xlprevious
VB:
Sub LastMax()
    col = 1
    Set plage = Range(Cells(1, col), Cells(Rows.Count, col).End(xlUp))
    Max = WorksheetFunction.Large(plage, 1)
    Set cel = plage.Find(Max, LookIn:=xlValues, SearchDirection:=xlPrevious)
    MsgBox cel.Address
End Sub

bonjour @xUpsilon
très mauvaise idée d'utiliser (xldown) :si il y a une cellule vide avant la fin ben c'est rapé !!
 

candice**

XLDnaute Nouveau
Bonjour à tous,
Merci pour vos réponses
J'ai juste un petit problème roblochon je pense que la fonction agregat n'est pas connu de par excel 2007 car des que je rentre la formule que vous m'avez donné j'ai une erreur de nom comme réponse.
 

Hasco

XLDnaute Barbatruc
Repose en paix
Re,

La fonction matricielle suivante vous retourne le n° de ligne correspondant au dernier MAX de A1:A32: GRANDE.VALEUR(SI(A1:A32=MAX(A1:A32);LIGNE(A1:A32));1)
vous devrez la valider par CTRL+MAJ+ENTREE (ce qu'évitait Agregat)

Mais vous ne dites toujours pas ce que vous voulez en faire.

Cordialement
 

candice**

XLDnaute Nouveau
Merci beaucoup roblochon cela fonctionne

Je veux utiliser cette ligne pour ensuite trouver la valeur d'une autre cellule de cette même ligne pour intégrer cette valeur à une formule qui me trace une droite tangente à une autre droite au point max de cette deuxième. C'est un peu compliqué mais votre solution pour mon problème fonctionne.

Merci à tous
 

Discussions similaires

Réponses
4
Affichages
443
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…