sur la formule ci-dessous, j'utilise un sommeprod avec plusieurs critères. La longueur des colonnes sur lesquelles je m'appuie changent régulièrement.
j'utilise donc comme vous me l'avez préconisé un nom + la fonction décaler.
Cependant pour les dates j'ai un message d'erreur. il n'apprécie le nom.
formule d'origine
=SOMMEPROD((TYPEPC=$U$16)*(type=V$15)*(status='Demande PC 1'!$A$11)*(MOIS('Demande PC 1'!$E2:$E499)=MOIS($B$6&6)))
formule avec un nom
=SOMMEPROD((TYPEPC=$U$16)*(type=V$15)*(status='Demande PC 1'!$A$11)*(MOIS(date)=MOIS($B$6&6)))
j'ai défini le date=DECALER('Demande PC 1'!$E:$E;;;NBVAL('Demande PC 1'!$E:$E)-1;1).
Comment prendre en compte une plage de valeur qui varie ?
Dans la colonne mois, je veux pouvoir compter les demande pour un mois précis.
ici cette cellule fait référence au mois de janvier (je l'ai oublié dans le fichier)
c'est maintenant corrigé dans le nouveau fichier en pièce jointe
Alors 2 petites choses si ta cellule qui sert de référence au mois sur lequel tu veux compter (ici B6) est en format numérique pas besoin d'utiliser :MOIS($B$6&6) un simple MOIS(B6) suffit par contre MOIS($B$6&6) s'utilise si la cellule contient le mois en texte.
ensuite ton renvoie de valeur est effectivement du à la plage nommée DATE elle commence en ligne 1 de la feuille, et E1 n'est pas une date mais un texte alors excel ne peut pas faire la comparaison, pour modifier cela il suffit de changer la formule
Code:
=[B]DECALER('Demande PC 1'![COLOR=Red]$E:$E[/COLOR];;;NBVAL('Demande PC 1'!$E:$E)-1;1)[/B]
par
Code:
=[B]DECALER('Demande PC 1'![COLOR=Red]$E$2[/COLOR];;;NBVAL('Demande PC 1'!$E:$E)-1;1)[/B]
et bien évidement faire la même opération pour les autres plages