Comment utiliser SUMPRODUCT dans VBA (avec exemple)



Vous pouvez utiliser la syntaxe de base suivante pour utiliser SUMPRODUCT dans VBA :

Sub SumProduct()
Range("E2") = WorksheetFunction.SumProduct(Range("B2:B11"), Range("C2:C11"))
End Sub

Cet exemple particulier calculera la somme du produit des valeurs dans les plages B2:B11 et C2:C11 et renverra le résultat dans la cellule E2 .

L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.

Exemple : Comment utiliser SUMPRODUCT dans VBA

Supposons que nous disposions de l’ensemble de données suivant contenant des informations sur les ventes de divers fruits dans une épicerie :

Supposons que nous souhaitions calculer le revenu total du magasin en multipliant le prix par le nombre d’unités, puis en prenant la somme.

Nous pouvons utiliser la méthode VBA SumProduct pour ce faire :

Sub SumProduct()
Range("E2") = WorksheetFunction.SumProduct(Range("B2:B11"), Range("C2:C11"))
End Sub

Lorsque nous exécutons cette macro, nous recevons le résultat suivant :

La somme du produit des valeurs comprises entre les plages B2:B11 et C2:C11 est 139 .

Cette valeur est affichée dans la cellule E2 , comme nous l’avons spécifié dans la macro.

Nous pouvons vérifier que cela est correct en calculant manuellement la somme des produits entre les deux plages :

Somme des produits : (4*1) + (3*5) + (3*4) + (2*7) + (2*3) + (5*5) + (3*5) + (2*6 ) + (5*6) + (2*3) = 139 .

Cela correspond à la valeur calculée par la méthode VBA SumProduct .

Remarque : Vous pouvez trouver la documentation complète de la méthode VBA SumProduct ici .

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :

VBA : Comment additionner les valeurs dans une plage
VBA : Comment calculer la valeur moyenne de la plage
VBA : Comment compter le nombre de lignes dans la plage

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *