Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Sommeprod en macro

4 réponses
Avatar
DOMINIQUE
Bonjour le forum ,
Dans une macro j insère cette ligne :
Te_CptageNbreCoq =
Evaluate("sumproduct((A49:A250=Te_NumeroUG)*(B49:B250=Co_Année)*(c49:c250)")

Sachant que Te_CptageNbreCoq est un textbox
Te_NumeroUG est un textbox contenant un chiffre entre 1 et 31
Co_Année est un combobox contenant des années (2006, 2007,....)

dans la base de données, les valeurs recherchées sont numériques, je pense
que le couac est la car surement que dans le textbox et combobox, ils
doivent être en texte.

Merci pour votre aide

4 réponses

Avatar
Daniel.C
Bonjour.
Tu dois sortir "Te_NumeroUG" et "Co_Année" des guillemets, sinon le
string est pris pour du texte :
Evaluate("sumproduct((A49:A250=" & Te_NumeroUG & ")*(B49:B250=" &
Co_Année & ")*(c49:c250)").
Maintenant, effectivement, les textboxes renvoient du texte; il faut
donc le convertir.
Cordialement.
Daniel

Bonjour le forum ,
Dans une macro j insère cette ligne :
Te_CptageNbreCoq =
Evaluate("sumproduct((A49:A250=Te_NumeroUG)*(B49:B250=Co_Année)*(c49:c250)")

Sachant que Te_CptageNbreCoq est un textbox
Te_NumeroUG est un textbox contenant un chiffre entre 1 et 31
Co_Année est un combobox contenant des années (2006, 2007,....)

dans la base de données, les valeurs recherchées sont numériques, je pense
que le couac est la car surement que dans le textbox et combobox, ils doivent
être en texte.

Merci pour votre aide
Avatar
DOMINIQUE
Merci Daniel,
ca va mieux mais j ai l'erreur "impossible de definir la propriété value".
Peux tu m aider à trouver mon erreur?
Voici mon code :

Private Sub Co_UG_Change()

With Sheets("feuil4")
Set c = .Range("C2:C32").Find(what:=Me.Co_UG)
Me.Te_NumeroUG = .Cells(c.Row, 1)
End With

Me.Te_CptageNbreCoq = Evaluate("sumproduct((A49:A250=" & Te_NumeroUG &
")*(B49:B250=" & Co_année & ")*(c49:c250)")

End Sub

Une autre question pour mon apprentissage : A quoi sert les 2& qui encadre
Te_NumeroUG et Co_année .
Merci beaucoup pour ton aide

"Daniel.C" a écrit dans le message de groupe de
discussion : uBlm23L$
Bonjour.
Tu dois sortir "Te_NumeroUG" et "Co_Année" des guillemets, sinon le string
est pris pour du texte :
Evaluate("sumproduct((A49:A250=" & Te_NumeroUG & ")*(B49:B250=" & Co_Année
& ")*(c49:c250)").
Maintenant, effectivement, les textboxes renvoient du texte; il faut donc
le convertir.
Cordialement.
Daniel

Bonjour le forum ,
Dans une macro j insère cette ligne :
Te_CptageNbreCoq =
Evaluate("sumproduct((A49:A250=Te_NumeroUG)*(B49:B250=Co_Année)*(c49:c250)")

Sachant que Te_CptageNbreCoq est un textbox
Te_NumeroUG est un textbox contenant un chiffre entre 1 et 31
Co_Année est un combobox contenant des années (2006, 2007,....)

dans la base de données, les valeurs recherchées sont numériques, je
pense que le couac est la car surement que dans le textbox et combobox,
ils doivent être en texte.

Merci pour votre aide




Avatar
Daniel.C
Non testé :
Me.Te_CptageNbreCoq = Evaluate("sumproduct((A49:A250=" & Te_NumeroUG &
")*(B49:B250=" & Co_année & ")*(c49:c250))")

Il faut ajouter la conversion des textboxes en numérique. Les "&" sont
des signes de concaténation.
Daniel

Merci Daniel,
ca va mieux mais j ai l'erreur "impossible de definir la propriété value".
Peux tu m aider à trouver mon erreur?
Voici mon code :

Private Sub Co_UG_Change()

With Sheets("feuil4")
Set c = .Range("C2:C32").Find(what:=Me.Co_UG)
Me.Te_NumeroUG = .Cells(c.Row, 1)
End With

Me.Te_CptageNbreCoq = Evaluate("sumproduct((A49:A250=" & Te_NumeroUG &
")*(B49:B250=" & Co_année & ")*(c49:c250)")

End Sub

Une autre question pour mon apprentissage : A quoi sert les 2& qui encadre
Te_NumeroUG et Co_année .
Merci beaucoup pour ton aide

"Daniel.C" a écrit dans le message de groupe de
discussion : uBlm23L$
Bonjour.
Tu dois sortir "Te_NumeroUG" et "Co_Année" des guillemets, sinon le string
est pris pour du texte :
Evaluate("sumproduct((A49:A250=" & Te_NumeroUG & ")*(B49:B250=" & Co_Année
& ")*(c49:c250)").
Maintenant, effectivement, les textboxes renvoient du texte; il faut donc
le convertir.
Cordialement.
Daniel

Bonjour le forum ,
Dans une macro j insère cette ligne :
Te_CptageNbreCoq =
Evaluate("sumproduct((A49:A250=Te_NumeroUG)*(B49:B250=Co_Année)*(c49:c250)")

Sachant que Te_CptageNbreCoq est un textbox
Te_NumeroUG est un textbox contenant un chiffre entre 1 et 31
Co_Année est un combobox contenant des années (2006, 2007,....)

dans la base de données, les valeurs recherchées sont numériques, je pense
que le couac est la car surement que dans le textbox et combobox, ils
doivent être en texte.

Merci pour votre aide




Avatar
DOMINIQUE
Ca marche Merci beaucoup Daniel

"Daniel.C" a écrit dans le message de groupe de
discussion : Ol09zDN$
Non testé :
Me.Te_CptageNbreCoq = Evaluate("sumproduct((A49:A250=" & Te_NumeroUG &
")*(B49:B250=" & Co_année & ")*(c49:c250))")

Il faut ajouter la conversion des textboxes en numérique. Les "&" sont des
signes de concaténation.
Daniel

Merci Daniel,
ca va mieux mais j ai l'erreur "impossible de definir la propriété
value". Peux tu m aider à trouver mon erreur?
Voici mon code :

Private Sub Co_UG_Change()

With Sheets("feuil4")
Set c = .Range("C2:C32").Find(what:=Me.Co_UG)
Me.Te_NumeroUG = .Cells(c.Row, 1)
End With

Me.Te_CptageNbreCoq = Evaluate("sumproduct((A49:A250=" & Te_NumeroUG &
")*(B49:B250=" & Co_année & ")*(c49:c250)")

End Sub

Une autre question pour mon apprentissage : A quoi sert les 2& qui
encadre Te_NumeroUG et Co_année .
Merci beaucoup pour ton aide

"Daniel.C" a écrit dans le message de groupe
de discussion : uBlm23L$
Bonjour.
Tu dois sortir "Te_NumeroUG" et "Co_Année" des guillemets, sinon le
string est pris pour du texte :
Evaluate("sumproduct((A49:A250=" & Te_NumeroUG & ")*(B49:B250=" &
Co_Année & ")*(c49:c250)").
Maintenant, effectivement, les textboxes renvoient du texte; il faut
donc le convertir.
Cordialement.
Daniel

Bonjour le forum ,
Dans une macro j insère cette ligne :
Te_CptageNbreCoq =
Evaluate("sumproduct((A49:A250=Te_NumeroUG)*(B49:B250=Co_Année)*(c49:c250)")

Sachant que Te_CptageNbreCoq est un textbox
Te_NumeroUG est un textbox contenant un chiffre entre 1 et 31
Co_Année est un combobox contenant des années (2006, 2007,....)

dans la base de données, les valeurs recherchées sont numériques, je
pense que le couac est la car surement que dans le textbox et combobox,
ils doivent être en texte.

Merci pour votre aide