Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

WorksheetFunction.sumproduct

  • Initiateur de la discussion Initiateur de la discussion Doridant
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Doridant

XLDnaute Nouveau
Bonjour, voici ma procédure :

Sheets("Graphiques_FP").Activate

Range("Y27").Value = Year(Now())
Range("Y28").Value = Year(Now()) + 1
Range("Y29").Value = Year(Now()) + 2
Range("Y30").Value = Year(Now()) + 3
Range("Y31").Value = Year(Now()) + 4
Range("Y32").Value = Year(Now()) + 5

dernligne = Sheets("Données_Fi_FP").Range("I" & Rows.Count).End(xlUp).Row

Range("Z32").Value = Application.WorksheetFunction.SumProduct((Year(Sheets("Données_Fi_FP").Range("K11:K" & dernligne)) = 2020) * Sheets("Données_Fi_FP").Range("H11:H" & dernligne))

Range("Z32").Value = Application.WorksheetFunction.SumProduct((Year(Sheets("Données_Fi_FP").Range("K11:K" & dernligne)) = 2023) * Sheets("Données_Fi_FP").Range("H11:H" & dernligne))

Range("Z33").Value = Application.WorksheetFunction.SumIf(Sheets("Données_Fi_FP").Range("K11:K" & dernligne), "", Sheets("Données_Fi_FP").Range("H11:H" & dernligne))


Le sumif marche parfaitement bien mais pas du tout le sumproduct
Quelqu'un a t-il une idée ?

Merci beaucoup par avance.

Cordialement.
 
Je ne peux pas soucis de confidentialité.
Mais en excel, la fonction marche parfaitement mais passé en vba cela ne fonctionne plus.
En excel, cela donne : =SOMMEPROD((ANNEE(Données_Fi_FP!K11:K55)=2020)*(Données_Fi_FP!H11:H55))
 
Pas sur mon pc donc mais vite regardé, c'est le boxon ton truc , tu parles des colonne Y27-28-29 et colonnes K ou H et là on est en plein tableau !

Je laisse à des plus patients et futés le soin de te résoudre ça 🙂

P.
 
Bonjour.
Suggestion: Utilisez Evaluate.
En invoquant la fonction SumProduct proprement dite vous ne pouvez de toute façon pas bénéficier de l'évaluation implicite préalable d'une expression spécifiée en argument comme vous le pouvez dans une formule.
J'estime d'ailleurs que votre formule du #5 n'est pas franchement correcte. Il faudrait :
Code:
=SOMMEPROD(N(ANNEE(Données_Fi_FP!K11:K55)=2020);Données_Fi_FP!H11:H55)
Laissez quand même un peu de travail à la fonction SOMMEPROD que diable ! Avec votre formule c'est l'évaluation de l'expression servant de paramètre unique qui fait tout le boulot ! SOMMEPROD, lui, avec ce qu'il reçoit finalement comme paramètre préalablement évalué, en est réduit à ne faire qu'une simple somme dans ce cas.
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…