Bonjour,

Je suis dans un projet de traitement de données excel pendant mon stage.
Je dois utiliser le fonction excel SUMPRODUCT avec condition mais je veux l'utiliser dans une macro.

Imaginons:

Dans les cellules A1 à A5 il y a des 0
Dans les cellules A5 à A10 il y a des 1
Dans les cellules B1 à B10 il y a des valeurs quelconques

Je veux sommer les valeurs de la colonne B pour lesquelles il y a un 1 dans la case correspondante de la colonne A.

Pour cela on utilise: =SUMPRODUCT((A1:A10=1)*(B1:B10))

Mais je voudrais l'écrire dans une Macro.

Par exemple, j'aimerais grâce à mon code VBA, retourner la valeur de cette sommeprod dans ma cellule C1, pour cela j'ai la solution:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
Range("C1") = Evaluate("SumProduct((A1:A10=1) * (B1:B10))")
Ce code marche, mais moi j'aimerais l'adapter à des cellules variables pour insérer la ligne de code dans une boucle comme suit:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
For i = 1 to 5000
 For j = 1 to 5000
 
Range("C1") = Evaluate("SumProduct(("A" & i :"A" & j =1) * ("B" & i : "B" & j))")
 
 Next j
Next i

Seulement ca ne marche pas car je ne connais pas la bonne syntaxe pour les "A" & i ....


Quelqu'un aurait-il déjà rencontré ce problème ?

Je remercie d'avance tous ceux qui me liront =)

Guillaume