Bonjour tt le monde
je souhaiterai transcrire en vba une formule sommeprod
en excel la formule donne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
=SOMMEPROD(($B$2:$B$1000=$B$509)*($E$2:$E$1000=$E$509)*($G$2:$G$1000))
et fonctionne
en vba, j'ecris
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
G = WorksheetFunction.SumProduct((B1:b1000=var1)*(e1:e1000=var2)*(g1:g1000))
et j'obtiens un message d'erreur
: attendu parenthese sur les deux points du ((B1:b1000=var1)
je ne comprend pas mon erreur. si quelqu'un passe par là, merci d'avance
ps:
je viens d'essayer
Code : Sélectionner tout - Visualiser dans une fenêtre à part
G = WorksheetFunction.Evaluate("SumProduct((B2:b1000=var1)*(e2:e1000=var2)*(g2:g1000))")
comme a écrit pierre fauconnier mais ça marche pas non plus
ps bis
en mettant des guillemets, il reconnais la fonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
G = WorksheetFunction.SumProduct("=((B2:b1000=var1)*(e2:e1000=var2)*(g2:g1000))")
mais j'ai erreur d'execution 1004, impossible de lire la propriété sumproduct de la classe worksheetfunction