Tu ne pourrais pas tout nous dire en une fois ou c'est pour faire durer le plaisir?Citation:
Envoyé par VBBBA
Version imprimable
Tu ne pourrais pas tout nous dire en une fois ou c'est pour faire durer le plaisir?Citation:
Envoyé par VBBBA
désolé.
rebonsoir
tu peux essayer cette macro , sans trier chaque colonne
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Dim x As Byte Dim Nombre As Single Dim Ligne As Long For x = 1 To 3 'boucle pour récupérer les 3 valeurs les plus eleveées 'récupère la Xieme valeur la plus élevée dans la 2eme colonne Nombre = Application.WorksheetFunction.Large(Columns(2), x) 'recherche le numéro de ligne pour la valeur trouvée Ligne = Application.Match(Nombre, Columns(2), 0) 'récupère le contenu de la 1ere colonne pour la valeur cible MsgBox Cells(Ligne, 1) Next x
bonne soirée
michel
t un boss!:!!
merci.simple et efficace a la fois
t'a oublié le ptit tag résolu ;)
=max(b:b)
oui mais comment faire si l'on veut les 5 plus grandes?ton truc est bon pour juste une valeur
Ben t'as qu'à stocker le premier max dans un variable avec son adresse, puis tu le remplace sur ta feuille par un chiffre tt petit genre -1000000.
Tu réexécutes ensuite max(B:B) puis tu refais le truc cinq fois et à la fin tu réécris les variables effacées au bon endroit ;)
Lol toujours aussi bricoleur le comcombre :mouarf:
moi j'aurai placé la place grande valeur dans un tableau (que tu redimensionne à chaque fois) et tu met en condition pour trouver la plus grande valeur, "si elle ne se trouve pas dans le tableau".
ou alors la prochaine fois tu nous dis directement que tu veux recuperer les 5 plus grandes tout de suite :evil:
Pour ma part, j'utiliserait Excel qui fait ça très bien.
Copie de toutes les valeurs dans une colonne.
Tri de cette colonne.
Récupération des 5 premières cellules.
En plus je l'avais deja proposé page 1 :roll:
fallait juste changer et recuperer les 5 premieres lignes... :mrgreen:Citation:
un sort et on recupere la valeur de la derneire ligne (je sais plus si ca trie de facon croissante ou non...)
Faut dire qu'à donner les infos au compte-gouttes, on s'y perd...
Bah oui... en fait je l'avais aussi oublié moi meme :mouarf:
c'est en voyant ta proposition que je m'en suis rappelé :?
il mérite un carton jaune le VBBBBBBA :P ... bon y'a plus qu'à attendre qu'il nous donne l'info suivante !! :mouarf:
bonjour
à qui s'adresse ce message ?Citation:
oui mais comment faire si l'on veut les 5 plus grandes?ton truc est bon pour juste une valeur
quitte à utiliser les outils tout faits d'Excel, pourquoi ne pas utiliser la fonction Grande.Valeur
GRANDE.VALEUR(matrice;k)
matrice représente la matrice ou la plage de données dans laquelle vous recherchez la k-ième plus grande valeur.
k représente, dans la matrice ou la plage de cellules, le rang de la donnée à renvoyer, déterminé à partir de la valeur la plus grande.
Recuperer la 3eme valeur la plus élevée dans la colonne B
Code:=GRANDE.VALEUR(B:B;3)
et en VBA ça donne
Code:Application.WorksheetFunction.Large(Columns(2), 3)
bonne journée
michel