Trouver les valeurs extrêmes avec Excel VBA

Une tâche relativement courante dans la pratique consiste à trouver des valeurs extrêmes à partir d’une liste. Ce n’est peut-être pas si simple. Il est préférable d’utiliser une fonction définie par l’utilisateur qui vous indique les adresses de cellule des valeurs extrêmes. La fonction de détermination de la valeur maximale dans une zone marquée est la suivante:

Function AdresseValeurMaximale(r As Range)
Dim rng As Range
Dim ValeurMax As Double
Application.Volatile
ValeurMax = WorksheetFunction.Max(r)
AdresseValeurMaximale = ""
For Each rng In r
If rng.Value = ValeurMax Then
AdresseValeurMaximale = AdresseValeurMaximale & _
rng.AddressLocal & "; "
End If
Next
End Function

Commentaires:
 Vous pouvez déterminer la plus grande valeur dans le marquage à l’aide de la fonction Max. Dans le cas où il y a plusieurs valeurs maximales identiques dans la zone marquée, enregistrez toutes les adresses dans la variable MaxValueAddress et ajoutez d’autres adresses avec l’opérateur de chaînage et simplement à l’arrière sur.
 Le cas contraire, comment vous pouvez déterminer les adresses de cellule des valeurs les plus faibles, est illustré dans la macro suivante:

Function AdresseValeurMinimale (r As Range)
Dim rng As Range
Dim ValeurMin As Double
ValeurMin = WorksheetFunction.min(r)
AdresseValeurMinimale = ""
For Each rng In r
if rng.Value = ValeurMin Then
AdresseValeurMinimale = AdresseValeurMinimale & _
rng.AddressLocal & "; "
End If
Next
End Function

Vous pouvez déterminer la valeur la plus basse dans le marquage à l’aide de la fonction Min. Si la valeur minimale apparaît plusieurs fois dans la zone marquée, entrez toutes les adresses de cellule à l’aide de la requête IF en conjonction avec l’opérateur de chaînage &.

S’abonner
Notifier de
0 Commentaires
le plus ancien
le plus récent le plus populaire
Inline Feedbacks
Voir tous les commentaires

Initiation à Excel

Fonctions Excel

Excel VBA

Macros VBA Utiles

Plus d'outils

Sur Facebook

Sur YouTube

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x