EXCEL : utilisation de la fonction SOMME.SI
Résolu/Fermé
denisw95
Messages postés
47
Date d'inscription
vendredi 18 décembre 2009
Statut
Membre
Dernière intervention
3 mai 2020
-
26 mai 2011 à 09:18
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 - 2 juin 2011 à 03:02
Raymond PENTIER Messages postés 58396 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 25 avril 2024 - 2 juin 2011 à 03:02
A voir également:
- EXCEL : utilisation de la fonction SOMME.SI
- Liste déroulante excel - Guide
- Formule excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Mise en forme conditionnelle excel - Guide
6 réponses
pépé35530
Messages postés
2942
Date d'inscription
vendredi 1 mai 2009
Statut
Membre
Dernière intervention
19 mars 2016
1 382
26 mai 2011 à 11:02
26 mai 2011 à 11:02
Bonjour,
il faudrait savoir ce que tu veux récupérer comme information dans ta fonction CONCATENER (qui me semble écrite bizarrement).
pépé
il faudrait savoir ce que tu veux récupérer comme information dans ta fonction CONCATENER (qui me semble écrite bizarrement).
pépé
denisw95
Messages postés
47
Date d'inscription
vendredi 18 décembre 2009
Statut
Membre
Dernière intervention
3 mai 2020
26 mai 2011 à 12:08
26 mai 2011 à 12:08
Je fais des statistiques sur 6 mois glissants. Pour trouver les bonnes données à traiter, je :
- recherche la colonne à prendre en compte via la fonction EQUIV
- le résultat de la fonction EQUIV me permet d'identifier l'ensemble des cellules à sommer en fonction du critère de sélection contenu dans la cellule M72
La fonction SOMME.SI telle qu'écrite ci-dessus n'est pas accepté par EXCEL. Si je mets la fonction CONCATENER dans une cellule distincte (XY) et que j'applique la fonction SOMME.SI(Activités!$B$1:$B$15;$M$72;XY), je récupère 0 au lieu de la valeur sommée.
- recherche la colonne à prendre en compte via la fonction EQUIV
- le résultat de la fonction EQUIV me permet d'identifier l'ensemble des cellules à sommer en fonction du critère de sélection contenu dans la cellule M72
La fonction SOMME.SI telle qu'écrite ci-dessus n'est pas accepté par EXCEL. Si je mets la fonction CONCATENER dans une cellule distincte (XY) et que j'applique la fonction SOMME.SI(Activités!$B$1:$B$15;$M$72;XY), je récupère 0 au lieu de la valeur sommée.
pépé35530
Messages postés
2942
Date d'inscription
vendredi 1 mai 2009
Statut
Membre
Dernière intervention
19 mars 2016
1 382
26 mai 2011 à 12:39
26 mai 2011 à 12:39
Bonjour,
il me semble que la fonction Concatener ne fonctionne que pour des chaînes de caractères.
La fonction Somme.si attend un plage de valeurs numériques.
A+
pépé
il me semble que la fonction Concatener ne fonctionne que pour des chaînes de caractères.
La fonction Somme.si attend un plage de valeurs numériques.
A+
pépé
Raymond PENTIER
Messages postés
58396
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
25 avril 2024
17 094
2 juin 2011 à 03:02
2 juin 2011 à 03:02
Bonjour pépé.
Non : Justement, le gros avantage de CONCATENER est d'accepter d'accoler des textes, des valeurs numériques, le contenu de cellules nommées, le contenu de cellules.
Le résultat, lui, est effectivement un texte.
Salutations.
Non : Justement, le gros avantage de CONCATENER est d'accepter d'accoler des textes, des valeurs numériques, le contenu de cellules nommées, le contenu de cellules.
Le résultat, lui, est effectivement un texte.
Salutations.
denisw95
Messages postés
47
Date d'inscription
vendredi 18 décembre 2009
Statut
Membre
Dernière intervention
3 mai 2020
26 mai 2011 à 13:05
26 mai 2011 à 13:05
N'existe t-il pas une fonction du type VALEUR (CONCATENER("Activités!L";K73+1;"C1";":L";K73+1;"C15")) qui me permettrait de récupérer le contenu de la matrice et non pas l'adresse de la matrice ?
Raymond PENTIER
Messages postés
58396
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
25 avril 2024
17 094
1 juin 2011 à 04:25
1 juin 2011 à 04:25
Essaie de commencer ta formule par INDIRECT(
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 396
Modifié par Vaucluse le 1/06/2011 à 09:57
Modifié par Vaucluse le 1/06/2011 à 09:57
Bonjour tous
il semble que votre formule mélange les types de référence de colonne ,
en effet le libellé de votre formule avec un K73=0 donne:
Activités!L1C1:L1C15
Je n'ai pas testé ce mélange des genres sur excel, mais je pense que c'est une partie du problème.
Par par ailleurs, Raymond à raison, le CONCATENER donne du texte mais pas une adresse.
Il faut traduire avec la fonction INDIRECT
essayez celle ci:
=SOMME.SI($B$1:$B$15;$M$72;INDIRECT("Activités!"&ADRESSE(1;K73+1)&":"&ADRESSE(15;K73+1)))
qui fera référence avec le code INDIRECT et K73=0 au champ:
Activités!$A$1:$A$15
" " " " " " $B$1:$B$15 avec K73=1
Etc...
Je pense que c'est ce que vous cherchez?
bonne chance
crdlmnt
Demandons nous si nous ne sommes pas seuls à comprendre ce que l'on explique?
il semble que votre formule mélange les types de référence de colonne ,
en effet le libellé de votre formule avec un K73=0 donne:
Activités!L1C1:L1C15
Je n'ai pas testé ce mélange des genres sur excel, mais je pense que c'est une partie du problème.
Par par ailleurs, Raymond à raison, le CONCATENER donne du texte mais pas une adresse.
Il faut traduire avec la fonction INDIRECT
essayez celle ci:
=SOMME.SI($B$1:$B$15;$M$72;INDIRECT("Activités!"&ADRESSE(1;K73+1)&":"&ADRESSE(15;K73+1)))
qui fera référence avec le code INDIRECT et K73=0 au champ:
Activités!$A$1:$A$15
" " " " " " $B$1:$B$15 avec K73=1
Etc...
Je pense que c'est ce que vous cherchez?
bonne chance
crdlmnt
Demandons nous si nous ne sommes pas seuls à comprendre ce que l'on explique?
Bonjour,
Merci pour ces retours
=SOMME.SI($B$1:$B$15;$M$72;INDIRECT("Activités!"&ADRESSE(1;K73+1)&":"&ADRESSE(15;K73+1)))
répond exactement à mes attentes
J'avais également implémenté la formule suivante, mais plus complexe et contraignante en maintenance :
=SOMME.SI(Activités!$B$1:$B$15;M$72;CHOISIR(DROITE($L73;2)-DROITE($C$1;2)+1;Sem17;Sem18;Sem19;Sem20;Sem21;Sem22;Sem23;Sem24;Sem25;Sem26))
où DROITE($L73;2) donne la semaine à traiter
DROITE($C$1;2) donne le début de l'historique
Semxx donne les plages concernées pour effectuer la somme
Cdlt
Merci pour ces retours
=SOMME.SI($B$1:$B$15;$M$72;INDIRECT("Activités!"&ADRESSE(1;K73+1)&":"&ADRESSE(15;K73+1)))
répond exactement à mes attentes
J'avais également implémenté la formule suivante, mais plus complexe et contraignante en maintenance :
=SOMME.SI(Activités!$B$1:$B$15;M$72;CHOISIR(DROITE($L73;2)-DROITE($C$1;2)+1;Sem17;Sem18;Sem19;Sem20;Sem21;Sem22;Sem23;Sem24;Sem25;Sem26))
où DROITE($L73;2) donne la semaine à traiter
DROITE($C$1;2) donne le début de l'historique
Semxx donne les plages concernées pour effectuer la somme
Cdlt