Sommes sur plusieurs onglets en fonction de chaînes de carac

bonjour,

je reprends ici un post que j'ai créé il y a 3-4 jours, avec le vrai fichier utilisé.

J'ai donc 1 feuille "recap" et 4 onglet pour 4 mois.

dans l'onglet recap j'ai une liste globale de nom (il s'agit de la liste de tous les enfants inscrits dans un CLAE).

dans les onglets des mois, j'ai leurs présence les mercredis de chaque mois, certains ne viennent plus, certains viennent de tps en tps, d'autres tous les mercredis selon les mois.

on fait des pointages par période de 2 mois (hors vacances, c'est pour ça que certains mercredis n'apparaissent pas, ils sont comptabilisés dans un autre tableau.)

ce que je souhaite :

- avoir dans la feuille recap, dans la colonne "presence sep/oct 2010", la somme des présences de ces 2 mois pour chaque enfant. par exemple pour le premier enfant, il aura un total de 0. le premier enfant à avoir un total différent de 0 est Arnaudet tristant qui aura un total de 3 pour ces 2 mois...

puis idem pour "présence nov/dec 2010", avoir les sommes des présences pour ces 2 mois.

j'ai déjà obtenu des réponses avec la fonction sommeprod, merci à ceux (ou à d'autres) qui ont donné des solutions de les reprendre sur ce fichier original...

la difficulté supplémentaire que je vois c'est que dans l'onglet recap les noms et prenoms des enfants sont dans 2 champs différents, alors que dans les onglets des mois il n'y a qu'une seule cellule. je ne peux pas faire autrement, il s'agit d'extraction d'un logiciel qui me sors les listes comme ça... J'ai crée un post spécifique sur le forum à ce sujet car il y a des espaces après chaque nom qui me font bugger la fusion

ensuite, remarque importante, là il s'agit du fichier où je dois pointer les mercredis, donc au maximum il y a 4 dates. sur un autre fichier, je vais pointer les présences des enfants à la garderie le matin et le soir tous les jours du mois (hors mercredi et hors vacances...), donc il y aura selon les mois entre 20 et 26 colonnes.

je vous dis ça pour que votre solution puisse s'adapter à tous les tableaux quelque soit leur taille et le nombre de colonnes.

voilà, merci beaucoup, à votre disposition si vous avez besoin de compléments.

poctoy

Bonjour

Réponse dans le fichier

Formule en I2

=SOMMEPROD(SOMME.SI(INDIRECT("'"&{"novembre 2010";"décembre 2010"}&"'!$A$2:$A$100");SUPPRESPACE($A2)&CAR(32)&$B2;INDIRECT("'"&{"novembre 2010";"décembre 2010"}&"'!$F$2:$F$100")))

Formule en J2

=SOMMEPROD(SOMME.SI(INDIRECT("'"&{"septembre 2010";"octobre 2010"}&"'!$A$2:$A$100");SUPPRESPACE($A2)&CAR(32)&$B2;INDIRECT("'"&{"septembre 2010";"octobre 2010"}&"'!$F$2:$F$100")))

Cordialement

merci, ça marche bien

j'ai juste bidouiller un peu pour pouvoir les sommes non pas sur la colonne F de chaque onglet, car j'aurai des feuilles plus tard où j'aurais plus de colonnes donc je dois calculer sur une plage plus large, et pas seulement sur la colonne F. ce qui donne :

=SOMMEPROD(SOMME.SI(INDIRECT("'"&{"septembre 2010";"octobre 2010"}&"'!A2:A1000");SUPPRESPACE($A19)&CAR(32)&$B19;DECALER(INDIRECT("'"&{"septembre 2010";"octobre 2010"}&"'!A2:A1000");0;COLONNE($A:$AM)-1)))

maintenant, je comprends pas très bien comment tourne cette formule. peux-tu m'éclairer sur les points suivants :

SUPPRESPACE($A2)&CAR(32)&$B2 : il s'agit du travail sur les caractères, ça supprimer les espaces. mais à quoi se rapporte le CAR(32), pourquoi cette valeur 32?

DECALER(...);0;COLONNE($A:$AM)-1))) : comment fonctionne la fonction DECALER, j'ai jamais compris à cette fonction.

enfi à quoi sert le INDIRECT?

en fait j'y comprends pas gd chose merci de tes explications...

ci-joint le fichier

a+

Bonjour

=SOMMEPROD(SOMME.SI(INDIRECT("'"&{"septembre 2010";"octobre 2010"}&"'!A2:A1000");SUPPRESPACE($A19)&CAR(32)&$B19;DECALER(INDIRECT("'"&{"septembre 2010";"octobre 2010"}&"'!A2:A1000");0;COLONNE($A:$AM)-1)))

maintenant, je comprends pas très bien comment tourne cette formule. peux-tu m'éclairer sur les points suivants :

SUPPRESPACE($A2)&CAR(32)&$B2 : il s'agit du travail sur les caractères, ça supprimer les espaces. mais à quoi se rapporte le CAR(32), pourquoi cette valeur 32?

Exemple: Ligne 8 en A8

ANGEBAUD est un nom composé de 8 caractères

Cependant, la cellule A8 contient 35 caractères soit les 8 caractères du texte ANGEBAUD suivis de 27 espaces.

La formule =SUPPRESPACE A8 renvoie la chaine de caractères sans espaces.

mais à quoi se rapporte le CAR(32), pourquoi cette valeur 32?

CAR(32) est le Code pour une espace standard (il existe aussi CAR(160))

Comme le Nom et le prénom sont séparés par une espace sur tes feuilles mois, lors de la concaténation de A19 et B19 (Nom Prénom), il faut intercaler une espace, donc A19&CAR(32)&B19

DECALER(...);0;COLONNE($A:$AM)-1))) : comment fonctionne la fonction DECALER, j'ai jamais compris à cette fonction.

Le mieux, pour comprendre la fonction DECALER est que tu regardes dans l'aide d'Excel qui est bien documenté sur ce sujet.

enfin à quoi sert le INDIRECT?

A reconstituer sous forme matricielle 3D les onglets concernés et les plages s'y rapportant.

Cordialement

ok, merci beaucoup de tes explications, je comprends (un peu) mieux.

sujet clos donc

Rechercher des sujets similaires à "sommes onglets fonction chaines carac"