Utilisation SOMMEPROD

Bonjour le forum,

Je viens vers vous parce que j'ai un problème d'utilisation pour la fonction SOMMEPROD:

  • dans la feuille 'Recap FI' j'ai des dates qui sont notées dans le colonne C en fonction de la référence donnée en A
  • si il n y'a pas de référence en A aucune date n'est rentrée.
  • les références arrivent de façon aléatoires

Je souhaite compter le nombre de date données en fonction du mois, exemple:

  • en septembre il y'a deux dates: 1 pour FIexcel1 et 1 pour FIexcel2
  • en novembre il y'a 1 pour FIexcel2

Pour les compter voici ma formule:

=SOMMEPROD((MOIS('Recap FI'!$C$2:$C$12)&ANNEE('Recap FI'!$C$2:$C$12)=MOIS($B13)&ANNEE($C$2))*1)

Elle fonctionne bien mais est limitée: je voudrai l'étirer jusqu'à la ligne 300 mais une erreur #VALEUR apparaît.

Auriez-vous des alternantives ? (fichier en PJ)

Merci et bonne journée

Cdlt

Bonjour,

Il te faut rendre ta zone de recherche dynamique. Pour cela il faut utiliser la fonction DECALER()

Ce qui te donne en nommant ta zone : col_c

=DECALER('Recap FI'!$C$2;;;NBVAL('Recap FI'!$C:$C)-1)

et tu inclus le nom de ta plage dans ta formule

=SI(ESTERREUR(SOMMEPROD((MOIS(col_c)&ANNEE(col_c)=MOIS($B4)&ANNEE($C$2))*1));"";SOMMEPROD((MOIS(col_c)&ANNEE(col_c)=MOIS($B4)&ANNEE($C$2))*1))

Voir le fichier ci-joint.

Cordialement,

Leakim

15sommeprodv001.zip (31.87 Ko)

Bonsoir leakim,

Merci beaucoup pour ta réponse et tes explications. Je n'avais aucune idée qu'on pouvait mettre une zone de recherche dynamique jusqu'à maintenant ^^.

Encore merci

Bonne soirée

@+

Re leakim,

Je me pose une question au sujet de NBVAL: si il y'a des cases vides dans ma colonne cela pose-t-il problème ?

  • Actuellement la formule ne fonctionne pas: la colonne s'étant jusqu'à la ligne 126 alors que la dernière information se trouve ligne 12.
  • J'ai essayé de rajouter une conditions $C:$C<>"" mais ça ne fonctionne pas.

Autre possible pb: les dates sont obtenues par des formules et proviennent d'autres fichiers. Donc quand une cellule est "vide" elle ne l'est pas puisqu'il y'a une formule.

J'espère que j'ai été clair,

Merci et bonne journée

Bonjour,

aure_8 a écrit :

Re leakim,

Je me pose une question au sujet de NBVAL: si il y'a des cases vides dans ma colonne cela pose-t-il problème ?

Non, si il n'y a pas de formule !!! Donc comme c'est le cas.

Dans la formule col_c remplacer NBVAL par NB.SI avec plage et critère

=DECALER('Recap FI'!$C$2;;;NB.SI('Recap FI'!$C:$C;"?*")-1)

A me redire,

Cordialement,

Leakim

Re,

Merci pour ta formule, malheureusement je n'arrive pas à l'appliquer.

Je me suis surement mal expliqué, je remets en PJ le fichier avec les modification apportées:

- un essai avec :

=DECALER('Recap FI'!$C$2;;;NB.SI('Recap FI'!$C:$C;"?*")-1)

dans cette colonne il y'a des formules

- un essai en colonne D avec

=DECALER('Recap FI'!$D$2;;;NBVAL('Recap FI'!$D:$D)-1)

cette formule fonctionne bien puisqu'il n'y a pas de cellules avec formule dans la colonne D

Merci

Ok,

Essai pour col_c avec

=DECALER('Recap FI'!$C$2;;;NB.SI('Recap FI'!$C$2:$C$1000;"*?")-1)

Ce qui te laisse 1000 lignes

La zone sera dynamique dans la limite de 1000 Lignes... j’espère que cela te suffira.

A me redire,

Leakim

Essai malheureusement infructeux avec un résultat plus que bizarre: il ne m'est compté que la première date, et uniquement la première ... J'ai bougé la limite de 1000 (qui est suffisante) en mettant plusieurs autres valeurs mais rien n'y fait.

Bien que je sois très mauvais en excel, ta formule me semble pourtant tout ce qu'il y'a de plus logique.

L'informatique et moi

@+

Bon alors, aux grands maux, les grands remèdes.

Plutôt que

=DECALER('Recap FI'!$C$2;;;NB.SI('Recap FI'!$C$2:$C$1000;"*?")-1)

Il faut essayer

=DECALER('Recap FI'!$C$2;;;SOMMEPROD(--(ESTNUM('Recap FI'!$C:$C))*1))
leakim a écrit :

Cette dernière, m'est venue cette semaine, lors d'une courte nuit

Après çà...

Tout mes espoirs sont dans cette formule.

Leakim

Re,

Je suis vraiment désolé mais ça ne fonctionne pas

Je crois que je vais reprendre mon fichier de 0 (re ) et reprendre un peu toutes les formules que tu m'as passé. Je te dirai un peu ce qu'il en est ^^.

Merci beaucoup pour le temps que tu y as consacré, c'est très sympa

@+

Bonjour leakim,

Après un remaniement de mon fichier je suis en mesure de t'annoncer que ta courte nuit n'a pas été inutile !

J'ai étiré la formule sur le colonne C de C1 à C1003 et donc la formule a cette tête:

=DECALER('Recap FI'!$C$2;;;SOMMEPROD(--(ESTNUM('Recap FI'!$C$1:$C$1003))*1))

Je pense avoir compris que si les cellules dans l'intervalle C1:C1003 ne contiennent pas toutes une formule ça ne fonctionne pas.

NB.SI ne marche pas non plus, mais ta dernière formule est de loin suffisante !

Merci pour ton aide et à bientôt.

Bonne journée

Bonjour Ok Alors

Leakim

Rechercher des sujets similaires à "utilisation sommeprod"