SumProduct VBA Conditions

djstroubi

XLDnaute Junior
Bonjour,

Cette code ne fonctione pas et je ne trouve d'où vient l'erreur.
Je veux faire un sumproduct avec des conditions.

Code:
Dim achat As Range
Dim fait As Range
Dim Produit As Range
Dim prix As Range
Set achat = Range("E4:E100")
Set fait = Range("K4:K100")
Set Produit = Range("D4:D100")
Set prix = Range("H4:H100")

pma.Caption = Evaluate("=SumProduct((Produit=""Euronext Milling Wheat"")*(fait=""Done"")*(achat)*(prix))")

Cordialement
 

djstroubi

XLDnaute Junior
Re : SumProduct VBA Conditions

Jai modifié les plages en
Set achat = Sheets("Entrée").Range("E4:E100")
Set vente = Sheets("Entrée").Range("F4:F100")
Set fait = Sheets("Entrée").Range("K4:K100")
Set Produit = Sheets("Entrée").Range("D4:D100")
Set prix = Sheets("Entrée").Range("H4:H100")

mais même sans le = devant sumproduct, cela ne fonctione pas

Cordialement
 

tototiti2008

XLDnaute Barbatruc
Re : SumProduct VBA Conditions

Re,

Et sinon,

Dans ton classeur, tes plages achat, fait, produit et prix sont nommées ?

C'est à dire, si tu vas dans le Gestionnaire de noms, ces noms achat, fait, produit et prix apparaissent-ils ?

et si non, est-ce que cette écriture fonctionne ?

Code:
pma.Caption = Evaluate("SumProduct((Entrée!D4:D100=""Euronext Milling Wheat"")*(Entrée!K4:K100=""Done"")*(Entrée!E4:E100)*(Entrée!F4:F100))")
 

tototiti2008

XLDnaute Barbatruc
Re : SumProduct VBA Conditions

Re,

Oui, tu lui demande d'évaluer une formule dans laquelle il y a des noms produit, fait, achat et prix.
Si ces noms n'apparaissent pas dans le gestionnaire de noms, c'est qu'il n'existent pas dans le classeur et il ne pourra pas évaluer ta formule
Je ne sais pas si l'écriture que je t'ai fournie te convient ou s'il faut absolument que tu utilises des noms dans ta formule, avec des noms ça pourrait donner

Code:
Thisworkbook.names.add "achat", Sheets("Entrée").Range("E4:E100")
Thisworkbook.names.add "fait", Sheets("Entrée").Range("K4:K100")
Thisworkbook.names.add "produit", Sheets("Entrée").Range("D4:D100")
Thisworkbook.names.add "prix", Sheets("Entrée").Range("H4:H100")

pma.Caption = Evaluate("SumProduct((Produit=""Euronext Milling Wheat"")*(fait=""Done"")*(achat)*(prix))")
 

Discussions similaires

Réponses
12
Affichages
301
Réponses
17
Affichages
1 K

Statistiques des forums

Discussions
312 613
Messages
2 090 236
Membres
104 463
dernier inscrit
lbo