sommeprod, nb.si et nom de liste en variable

Antoine B

XLDnaute Nouveau
Bonjour,

Je rencontre la difficulté suivante sous excel : j'ai plusieurs listes (qui contiennent des formules) et suivant la valeur d'une cellule, je souhaite qu'une cellule soit calculée en utilisant une liste plutot qu'une autre.

voici l'exemple :
la formule ci dessous fonctionne et me renvoie la valeur souhaitée :
=SOMMEPROD((NB.SI(listeA;'pointages BO sept'!$A$2:$A$50000))*('pointages BO sept'!$D$2:$D$50000=$A294)*('pointages BO sept'!$G$2:$G$50000<=RECHERCHEV('1 - pointages'!$A$4;calcul!$A$3:$E$14;5;FAUX))*('pointages BO sept'!$F$2:$F$50000))

en revanche, lorsque - dans la même formule - je remplace "listeA" (qui est une liste) par la cellule C$285 dont le contenu est "listeA", excel me renvoie la valeur 0 :
=SOMMEPROD((NB.SI(C$285;'pointages BO sept'!$A$2:$A$50000))*('pointages BO sept'!$D$2:$D$50000=$A294)*('pointages BO sept'!$G$2:$G$50000<=RECHERCHEV('1 - pointages'!$A$4;calcul!$A$3:$E$14;5;FAUX))*('pointages BO sept'!$F$2:$F$50000))

sachant que :
liste A = DECALER(calcul!$H$2;;;NB.SI(calcul!$H$2:$H$14;"><"&""))

Si l'un de vous a une solution (idéalement en excel et pas en vba que je ne connais pas du tout) ?

encore merci d'avance,
Antoine
 

Antoine B

XLDnaute Nouveau
Re : sommeprod, nb.si et nom de liste en variable

c'est bon ::)))
en repensant à ton dernier post JCGL, j'ai réalisé que je pouvais garder mes listes avec la fonction décaler, et derrière j'ai créé 5 listes comme les tiennes qui récupèrent les valeur de mes 5 listes initiales, sans formule particulière : calcul!$H$2:$H$14; c'est ces nouveaux noms de liste qu'il y a dans mes cellules et là la fonction indirect fonctionne !!!
merci encore à vous tous et bonne soirée (pour ce qu'il en reste ...)
Antoine
 

Antoine B

XLDnaute Nouveau
Re : sommeprod, nb.si et nom de liste en variable

bonjour Rachid,
merci pour ton retour, j'ai finalement créé des listes de listes (je sais pas si ça se dit comme ça) : la première série qui crée mes listes avec la fonction décaler et la deuxième série qui récupère les listes créées et qui donc fonctionne avec la fonction indirect (car ma deuxième série de listes n'utilise pas la fonction décaler). Ensuite, comme dans certains cas mes cellules "Cels" en paramètre de ma fonction globale représentent une liste de villes et dans d'autres cas elles représentent juste le nom d'une ville, j'ai fait un test sur le contenu de "Cels" et suivant ce qui ressort, j'applique indirect(Cels) ou juste Cels dans ma fonction globale.
je ne sais pas si je suis très clair en tout cas merci pour votre aide à tous !
bon dimanche,
Antoine
 

Discussions similaires

Réponses
22
Affichages
900

Statistiques des forums

Discussions
312 546
Messages
2 089 489
Membres
104 185
dernier inscrit
Daniel RONNA