OVH Cloud OVH Cloud

La somme des produits

7 réponses
Avatar
garnote
Bonjour,

Quel est l'équivalent VBA de
=SOMMEPROD((ici<80)*(ici>20)*ici)
sans mettre de formule sur la feuille ?

Sub Interrogative()
Set ici = Selection
MsgBox Application.WorksheetFunction.SumProduct(?,?,?)
End Sub

Serge

7 réponses

Avatar
Jacquouille
Salut
Ah si notre bon vieux président était là, il te suggérerait un petit coup
d'Evaluate.
A peu de choses près, cela donnerait
Evaluate("SOMMEPROD((ici<80)*(ici>20)*ici)")
soit mettre ta formule Excel entre " ".
Pas testé, mais réponses multiples dans Excelabo.net de Flo
Bonne chance
--
Jacquouille conseille : http://www.excelabo.net


"garnote" a écrit dans le message news:
EtJ_b.75068$
Bonjour,

Quel est l'équivalent VBA de
=SOMMEPROD((ici<80)*(ici>20)*ici)
sans mettre de formule sur la feuille ?

Sub Interrogative()
Set ici = Selection
MsgBox Application.WorksheetFunction.SumProduct(?,?,?)
End Sub

Serge




Avatar
garnote
Bonjour Jacquouille,

Oui mais cette sacrée proposition de VBA.
comment l'utiliser ?
MsgBox Application.WorksheetFunction.SumProduct(?,?,?)

Quand je choisis une WorkSheetFunction, je trouve que
l'aide d'excel n'est pas très aidante !

Serge



"Jacquouille" a écrit dans le message de
news: #3OBjau#
Salut
Ah si notre bon vieux président était là, il te suggérerait un petit coup
d'Evaluate.
A peu de choses près, cela donnerait
Evaluate("SOMMEPROD((ici<80)*(ici>20)*ici)")
soit mettre ta formule Excel entre " ".
Pas testé, mais réponses multiples dans Excelabo.net de Flo
Bonne chance
--
Jacquouille conseille : http://www.excelabo.net


"garnote" a écrit dans le message news:
EtJ_b.75068$
Bonjour,

Quel est l'équivalent VBA de
=SOMMEPROD((ici<80)*(ici>20)*ici)
sans mettre de formule sur la feuille ?

Sub Interrogative()
Set ici = Selection
MsgBox Application.WorksheetFunction.SumProduct(?,?,?)
End Sub

Serge








Avatar
Jacquouille
Sub Test_Evaluate()
[a5] = Evaluate("Max(b1:b5)")
End Sub
----------
D'où :
msgbox Evaluate("Max(b1:b5)")
Et cela devrait fonctionner.
Pas de garantie car mon neurone est toujours grippé et je suis en pleine
convalescence très pénible.
Si pas bien comprendo, voir Google ancien msg de AV sur EVALUATE. Il en a
fait un condensé.
bonne chance

--
Jacquouille conseille : http://www.excelabo.net


"garnote" a écrit dans le message news:
E1K_b.75146$
Bonjour Jacquouille,

Oui mais cette sacrée proposition de VBA.
comment l'utiliser ?
MsgBox Application.WorksheetFunction.SumProduct(?,?,?)

Quand je choisis une WorkSheetFunction, je trouve que
l'aide d'excel n'est pas très aidante !

Serge



"Jacquouille" a écrit dans le message de
news: #3OBjau#
Salut
Ah si notre bon vieux président était là, il te suggérerait un petit
coup


d'Evaluate.
A peu de choses près, cela donnerait
Evaluate("SOMMEPROD((ici<80)*(ici>20)*ici)")
soit mettre ta formule Excel entre " ".
Pas testé, mais réponses multiples dans Excelabo.net de Flo
Bonne chance
--
Jacquouille conseille : http://www.excelabo.net


"garnote" a écrit dans le message news:
EtJ_b.75068$
Bonjour,

Quel est l'équivalent VBA de
=SOMMEPROD((ici<80)*(ici>20)*ici)
sans mettre de formule sur la feuille ?

Sub Interrogative()
Set ici = Selection
MsgBox Application.WorksheetFunction.SumProduct(?,?,?)
End Sub

Serge












Avatar
garnote
Sub Somme_Restreinte()
MsgBox Application.WorksheetFunction.SumProduct([a1:a2],[c1:c2])
End Sub
Je crois bien qu'on ne peut entrer que des Range dans
Application.WorksheetFunction.SumProduct,
pas des conditions. Et bien, tant pis, je vais Evaluate.

Erre-je ?

Serge

"Jacquouille" a écrit dans le message de
news: #3OBjau#
Salut
Ah si notre bon vieux président était là, il te suggérerait un petit coup
d'Evaluate.
A peu de choses près, cela donnerait
Evaluate("SOMMEPROD((ici<80)*(ici>20)*ici)")
soit mettre ta formule Excel entre " ".
Pas testé, mais réponses multiples dans Excelabo.net de Flo
Bonne chance
--
Jacquouille conseille : http://www.excelabo.net


"garnote" a écrit dans le message news:
EtJ_b.75068$
Bonjour,

Quel est l'équivalent VBA de
=SOMMEPROD((ici<80)*(ici>20)*ici)
sans mettre de formule sur la feuille ?

Sub Interrogative()
Set ici = Selection
MsgBox Application.WorksheetFunction.SumProduct(?,?,?)
End Sub

Serge








Avatar
Michel Gaboly
Bonjour,

Pour Evaluate, il vaut mieux fournir une chaîne avec SumProduct
qu'avec SOMMEPROD ;-))


Salut
Ah si notre bon vieux président était là, il te suggérerait un petit coup
d'Evaluate.
A peu de choses près, cela donnerait
Evaluate("SOMMEPROD((ici<80)*(ici>20)*ici)")
soit mettre ta formule Excel entre " ".
Pas testé, mais réponses multiples dans Excelabo.net de Flo
Bonne chance
--
Jacquouille conseille : http://www.excelabo.net


"garnote" a écrit dans le message news:
EtJ_b.75068$
Bonjour,

Quel est l'équivalent VBA de
=SOMMEPROD((ici<80)*(ici>20)*ici)
sans mettre de formule sur la feuille ?

Sub Interrogative()
Set ici = Selection
MsgBox Application.WorksheetFunction.SumProduct(?,?,?)
End Sub

Serge





--
Cordialement,

Michel Gaboly
http://www.gaboly.com


Avatar
Jacquouille
Outils / Options / Général : Cocher l'option " Traduction automatique des
fonctions".
Ou alors, il faudra changer de version. -))))

Merci pour ta sagacité qui n'aura échappé à personne, mais je cause si peu
le Grand Breton ....
Et notre Garnote, se sort-il de son Sommeprod ou bien faut-il lui offrir un
abonnement gratuit d'un an à la SPA ?

--
Jacquouille conseille : http://www.excelabo.net


"Michel Gaboly" a écrit dans le message news:

Bonjour,

Pour Evaluate, il vaut mieux fournir une chaîne avec SumProduct
qu'avec SOMMEPROD ;-))


Salut
Ah si notre bon vieux président était là, il te suggérerait un petit
coup


d'Evaluate.
A peu de choses près, cela donnerait
Evaluate("SOMMEPROD((ici<80)*(ici>20)*ici)")
soit mettre ta formule Excel entre " ".
Pas testé, mais réponses multiples dans Excelabo.net de Flo
Bonne chance
--
Jacquouille conseille : http://www.excelabo.net


"garnote" a écrit dans le message news:
EtJ_b.75068$
Bonjour,

Quel est l'équivalent VBA de
=SOMMEPROD((ici<80)*(ici>20)*ici)
sans mettre de formule sur la feuille ?

Sub Interrogative()
Set ici = Selection
MsgBox Application.WorksheetFunction.SumProduct(?,?,?)
End Sub

Serge





--
Cordialement,

Michel Gaboly
http://www.gaboly.com






Avatar
ChrisV
Bonjour Serge,

SOMMEPROD... Pfff

Il y a aussi...
MsgBox [Sum((ici<80)*(ici>20)*ici)]


;-)

ChrisV


"garnote" a écrit dans le message de news:
EtJ_b.75068$
Bonjour,

Quel est l'équivalent VBA de
=SOMMEPROD((ici<80)*(ici>20)*ici)
sans mettre de formule sur la feuille ?

Sub Interrogative()
Set ici = Selection
MsgBox Application.WorksheetFunction.SumProduct(?,?,?)
End Sub

Serge