/ / Fonction moyenne personnalisée dans Excel VBA

Fonction moyenne personnalisée dans Excel VBA

Ci-dessous, nous examinerons un programme en Excel VBA qui crée un Fonction définie par l'utilisateur qui calcule la moyenne d’une plage choisie au hasard excluant une ou plusieurs valeurs qui sont des valeurs aberrantes et ne doivent pas être moyennées.

Situation:

Fonction moyenne personnalisée dans Excel VBA

Les fonctions définies par l'utilisateur doivent être placées dans un module.

1. Ouvrez Visual Basic Editor et cliquez sur Insérer, Module.

2. Ajoutez la ligne de code suivante:

Function CUSTOMAVERAGE(rng As Range, lower As Integer, upper As Integer)

Le nom de notre fonction est CUSTOMAVERAGE. La partie entre crochets signifie que nous donnons à Excel VBA une plage et deux variables Integer en entrée. Nous appelons notre gamme rng, une variable Integer appelée inférieure et une variable Integer supérieure, mais vous pouvez utiliser n'importe quel nom.

3. Ensuite, nous déclarons un objet Range et deux variables de type Integer. Nous appelons la cellule d'objet Range. Une variable entière que nous appelons total et une variable entière que nous appelons compte.

Dim cell As Range, total As Integer, count As Integer

4. Nous voulons vérifier chaque cellule dans une plage sélectionnée au hasard (cette plage peut être de toute taille). Dans Excel VBA, vous pouvez utiliser la boucle For Each Next pour cela. Ajoutez les lignes de code suivantes:

For Each cell In rng

Next cell

Remarque: le rng et la cellule sont choisis au hasard ici, vous pouvez utiliser n'importe quel nom. N'oubliez pas de faire référence à ces noms dans le reste de votre code.

5 Ensuite, nous vérifions pour chaque valeur de cette plage si elle se situe entre les deux valeurs (inférieure et supérieure). Si la valeur est true, nous incrémentons le total de la valeur de la cellule et incrémentons de 1. Ajoutez les lignes de code suivantes à la boucle.

If cell.Value >= lower And cell.Value <= upper Then
    total = total + cell.Value
    count = count + 1
End If

6. Pour renvoyer le résultat de cette fonction (la moyenne souhaitée), ajoutez la ligne de code suivante en dehors de la boucle.

CUSTOMAVERAGE = total / count

7. N’oubliez pas de mettre fin à la fonction. Ajoutez la ligne:

End Function

8. Vous pouvez maintenant utiliser cette fonction comme toute autre fonction Excel pour calculer la moyenne des nombres compris entre deux valeurs.

Résultat:

Résultat de fonction moyen personnalisé

Pour vérifier, vous pouvez supprimer toutes les valeurs qui sontinférieur à 10 et supérieur à 30 et utilisez la fonction standard standard dans Excel pour voir si Excel calcule la même moyenne que notre fonction de moyenne personnalisée.

Contrôle de fonction moyen personnalisé

Notre fonction moyenne personnalisée fonctionne! Remarque: cette fonction est uniquement disponible dans ce classeur.

Lisez aussi: