Rechercher les cinq dernières références

Résolu/Fermé
kit24be - 3 sept. 2013 à 18:01
 kit24be - 4 sept. 2013 à 10:01
Bonjour,

je désire rechercher les 5 dernières valeurs d'une référence dans une
liste qui compte plusieurs centaines de références différentes et en faire la moyenne.

les références sont en colonne B et les valeurs en colonne C

Merci d avance pour votre aide
A voir également:

2 réponses

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
Modifié par michel_m le 4/09/2013 à 08:16
Bonjour

proposition:
Option Explicit
Sub Cinq_dernieres()
Dim Derlig As Long, Ref As String, Lig As Long, Nbre As Byte, Somme As Double

Derlig = Columns("B").Find("*", , , , , xlPrevious).Row
Ref = Range("choix")
If Application.CountIf(Range("B2:B" & Derlig), Ref) < 5 Then GoTo inferieur

Lig = Derlig + 1
For Nbre = 1 To 5
     Lig = Range("B2:B" & Lig).Find(Ref, , , , , xlPrevious).Row
     Somme = Somme + Cells(Lig, "C")
     Lig = Lig - 1
Next
Range("moyenne") = Somme / 5

Exit Sub
inferieur:
MsgBox "nombre de " & Ref & " inférieur à 5", vbCritical

End Sub


et la maquette de travail
https://www.cjoint.com/?3IeijTCgV0h

remarque: "plusieurs centaines" étant très subjectif, j'ai déclaré derlig et lig en long... :o)



Michel
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
4 sept. 2013 à 08:21
errata :o/
remplacer
Lig=derlig+1 par
Lig=Derlig
0
Bonjour,

un très grand merci pour votre réponse. Cela fonctionne super bien.
Bonne journée
0