Sommer en fonction du mois sélectionnée

Résolu/Fermé
Camille B. - 2 mars 2016 à 19:42
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 3 mars 2016 à 11:24
Bonjour,

J'ai un soucis que je sais pouvoir régler avec des successions de fonctions et de tableau. Je ne sais pas lesquelles et je pense qu'il doit y avoir plus simple que ce à quoi je penserais.

Je dois faire un TBS et j'aimerais comparer en présentation la même période sur plusieurs années. J'ai une feuille de données, dans laquelle je rentre tout mensuellement.

Mon soucis est que mon tableau de feuille prez somme, par exemple, les données de Janvier à Juillet si je sélectionne Juillet comme étant le mois en cours (liste déroulante). Et ne pas avoir à changer les formules tous les mois...

Merci de votre aide (je n'ai jamais eu de formation poussée sous Excel donc soyez indulgents ;)

1 réponse

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
2 mars 2016 à 19:55
Bonjour

dans cell1 > le N° du mois cherché à la place du nom de mois
dans cell2 > le N° de l'année si vous devez aussi cumuler avec l'année:


=SOMMEPROD((MOIS(Champ date)=Cell1)*(ANNEE(champ date)=Cell2)*(champ à sommer))

limitez les champs avec des N° de colonne et de ligne pour que le fichier soit moins lourd: genre: A1:A100 et pas A:A
le champ à sommer ne doit pas coporter de texte

si vous n'avez pas besoin de l'année, supprimer l'item correspondant dans la formule :

=SOMMEPROD((MOIS(Champ date)=Cell1)*(champ à sommer))

crdlmnt


0
J'avoue ne pas avoir tout suivi là...

Je vous joins le fichier pour plus de simplicité et je reformule : si je choisi Mars, je veux que dans la colonne "Somme à afficher", une formule somme les données de Janvier à Mars par exemple. Si je choisis Septembre, je veux qu'elle affiche la somme des données de Janvier à Septembre.

Désolée si votre réponse correspondait bien à ce cas mais je ne l'ai pas comprise..

http://www.cjoint.com/c/FCdilFp1o0H
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
3 mars 2016 à 09:57
C'est effectivement un peu différent de ce j'avais imaginé
voyez ici:
https://www.cjoint.com/c/FCdi27iwvMv
j'ai aussi fait quelques petites modifs:
le menu déroulant de b1 se réfère à C3:N3 (meilleurs moyen de ne pas avoir de différence d'écriture entre les titres et la valeur cherchée, ce qui était le cas pour sept, oct dec)
le titre de colonne du résultat affiche le mois choisi
revenez si besoin
crdlmnt
0
Top !! Merci beaucoup !!
Pourriez-vous m'expliquer rapidement ? La fonction décaler, les ; successifs et la fonction equiv ?
Si non, je comprendrai en cherchant
Merci encore !
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
Modifié par Vaucluse le 3/03/2016 à 11:05
principe de la formule:

DECALER(cell départ; valeur décalage ligne; valeur décalage colonne)
renvoie la valeur de la cellule situé à valeur ligne et colonne à partir de la cellule départ indiquée

DECALER(cell départ;valeur;décalage ligne;valeur de décalage colonne;hauteur de champ; largeur de champ)
définit une plage décalée à partir de la cellule départ, du nombre de lignes indiquées dans "hauteur" et du nombre de colonne dans largeur

EQUIV(valeur;champ;0)
définit le rang dans le champ de la valeur indiqué en début de formule
le 0 indique à Excel qu'il ne faut considérer que des valeurs exactes

donc la formule de votre tableau en O4
=SOMME(DECALER($C4;;;;EQUIV($B$1;$C$3:$N$3;0)))

fait la somme du champ:
__à partir de la cellule C4
__sans décalage de ligne ou de colonne et sans hauteur de champ, puisque il faut imaginer que pour Excel par défaut les points virgules successifs valent 0
__et en final, de la largeur définit par le code EQUIV, qui ressort le N° de position du mois dans le champ C3:N3

espérant avoir été assez clair, ce n'est pas toujours facile par écrit

crdlmnt
0
C'est vraiment génial et l'explication est plus claire que celle d'Excel... les descriptions de fonctions seraient vraiment à revoir
Mais comment parvenez-vous à faire des trucs pareils ???
0