copier les 5 valeurs maximum d'une colonne

krabbe

XLDnaute Nouveau
Bonjour,

Je fait de l'analyse de données avec excel et vba et à un moment donné j'ai une colonne avec 1500 valeurs. Je veux copier les 5 plus grandes valeurs dans l'ordre où elles apparaissent dans ma colonne.

J'ai deux méthodes :

1) J'utilise la fonction excel Grande.Valeur mais avec cette fonction je ne vois pas comment les avoir dans l'ordre chronologique.

Par exemple si ma colonne contient 10 valeurs comme celles ci :

3,7,9,2,0,4,21,2,9,5

je veux copier dans une autre colonne : 7,9,21,9,5 et dans cet ordre.

2) Mes 5 plus grandes valeurs sont dans des cellules colorées en rouge et je tente de les copier une par une dans une autre colonne mais ça ne marche pas ... d'accord je ne suis pas très fort en développement donc vous trouverez certainement d'où ça vient :

c=1
For m = 1 To 1500
If Range("M" & m).Interior.Color = 4 Then
Range("M" & m).Select
Selection.Copy
Range("N" & c).Select
ActiveSheet.Paste
c = c + 1
End If
Next m


Le truc c'est que comme je n'arrive pas à avoir l'ordre chronologique pour la première méthode j'essaie avec la deuxième actuellement, mais si vous savez comment le faire avec la première ça m'irait aussi très bien !

Merci d'avance tout le monde !

Aurélien.
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re : copier les 5 valeurs maximum d'une colonne

Bonjour

Juste une petite question pour ton code

Tu dis que tes cellules sont coloriées en rouge mais elles sont coloriées comment ?? A la mano ou avec une MFC ?? Car si c'est une MFC ton code ne marchera.
 

Monique

Nous a quitté
Repose en paix
Re : copier les 5 valeurs maximum d'une colonne

Bonjour,

Avec ou sans mise en forme conditionnelle

Les valeurs en A2:A30
En B2 puis copier coller vers le bas :
=INDEX(A$1:A$30;PETITE.VALEUR(SI(A$2:A$30>=GRANDE.VALEUR(A$2:A$30;5);LIGNE(A$2:A$30));LIGNES(B$2:B2)))
Formule matricielle, à valider par ctrl, maj et entrée
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 084
Messages
2 085 194
Membres
102 813
dernier inscrit
kaiyi