Somme de cellule portant le même nom sur Exce
Résolu/Fermé
jimclermont
-
30 mars 2011 à 22:38
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 - 6 oct. 2015 à 19:06
eriiic Messages postés 24600 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 21 octobre 2024 - 6 oct. 2015 à 19:06
A voir également:
- Somme de cellule portant le même nom sur Exce
- Formule somme excel colonne - Guide
- Somme si couleur - Guide
- Le nom du champ de tableau croisé dynamique n'est pas valide ✓ - Forum Excel
- Trouver un numéro de portable avec un nom ✓ - Forum Mobile
- Trouver un nom avec une adresse ✓ - Forum Loisirs / Divertissements
9 réponses
Raymond PENTIER
Messages postés
58720
Date d'inscription
lundi 13 août 2007
Statut
Contributeur
Dernière intervention
10 novembre 2024
17 234
Modifié par Raymond PENTIER le 31/03/2011 à 06:13
Modifié par Raymond PENTIER le 31/03/2011 à 06:13
"Moi je veux faire la somme de toute les cellules"
Tu voulais dire "... faire le décompte de ..." ?
=NB.SI(plage;"*aqueduc*") à essayer ... (j'ai pas vérifié !)
C'est bien, la retraite ! Surtout aux Antilles ... :-)
? Raymond ?
Tu voulais dire "... faire le décompte de ..." ?
=NB.SI(plage;"*aqueduc*") à essayer ... (j'ai pas vérifié !)
C'est bien, la retraite ! Surtout aux Antilles ... :-)
? Raymond ?
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 239
Modifié par eriiic le 31/03/2011 à 17:10
Modifié par eriiic le 31/03/2011 à 17:10
Re,
Un peu de retard sur patrice, mais comme elle est faite voici ma version de la fonction personnalisée :
Ex syntaxe :
=SommeSiNom(formule!$E$5:$E$12;B9)
Eric
Edit: fichier exemple : SommeSiNom.xls
Un peu de retard sur patrice, mais comme elle est faite voici ma version de la fonction personnalisée :
Function SommeSiNom(plage As Range, nom As String) As Double Dim c As Range For Each c In plage If Mid(c.Formula, 2) = nom Then SommeSiNom = SommeSiNom + 1 Next c SommeSiNom = SommeSiNom * Range(nom) End Function
Ex syntaxe :
=SommeSiNom(formule!$E$5:$E$12;B9)
Eric
Edit: fichier exemple : SommeSiNom.xls
Eriiic tu as la solution exact. C'est parfait et testé tout est ok.
Il me reste juste une chose à régler dans mon fichier. Je t'envoi ton fichier avec mes modification. Dans la "formule" j'ai ajouté 2 collones, je dois avoir le total des donnés qui son dans la collone H quand il y a la cellule acqueduc dans la collone F. voir explication FEUIL3.
http://www.cijoint.fr/cjlink.php?file=cj201103/cijUHcfQsZ.xls
MERCI D'AVANCE
Il me reste juste une chose à régler dans mon fichier. Je t'envoi ton fichier avec mes modification. Dans la "formule" j'ai ajouté 2 collones, je dois avoir le total des donnés qui son dans la collone H quand il y a la cellule acqueduc dans la collone F. voir explication FEUIL3.
http://www.cijoint.fr/cjlink.php?file=cj201103/cijUHcfQsZ.xls
MERCI D'AVANCE
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 239
31 mars 2011 à 22:07
31 mars 2011 à 22:07
Re,
Nouvelle fonction qui accepte 2 syntaxes (le 3ème paramètre est optionnel) :
Syntaxe1 (idem 1ère fonction) :
=SommeSiNom(formule!$F$5:$F$12;B9)
Syntaxe2 :
=SommeSiNom(formule!$F$5:$F$12;B9;formule!$H$5:$H$12)
Si le 3ème paramètre optionnel est présent ce sont les valeurs de cette plage qui seront additionnées.
Remarque1 :
=SommeSiNom(formule!$F$5:$F$12;B9;formule!$F$5:$F$12) donne le même résultat que la syntaxe1
Remarque2:
On peut tout aussi bien effectuer la multiplication et se passer de la colonne intermédiaire H.
SommeSiNom.xls
eric
Nouvelle fonction qui accepte 2 syntaxes (le 3ème paramètre est optionnel) :
Function SommeSiNom(plage As Range, nom As String, Optional plage_valeurs As Range) As Double Dim c As Range, lig As Long, opt As Boolean If Not plage_valeurs Is Nothing Then opt = True For Each c In plage lig = lig + 1 If Mid(c.Formula, 2) = nom Then If Not opt Then SommeSiNom = SommeSiNom + c.Value Else SommeSiNom = SommeSiNom + Application.Transpose(plage_valeurs.Value)(lig) End If End If Next c End Function
Syntaxe1 (idem 1ère fonction) :
=SommeSiNom(formule!$F$5:$F$12;B9)
Syntaxe2 :
=SommeSiNom(formule!$F$5:$F$12;B9;formule!$H$5:$H$12)
Si le 3ème paramètre optionnel est présent ce sont les valeurs de cette plage qui seront additionnées.
Remarque1 :
=SommeSiNom(formule!$F$5:$F$12;B9;formule!$F$5:$F$12) donne le même résultat que la syntaxe1
Remarque2:
On peut tout aussi bien effectuer la multiplication et se passer de la colonne intermédiaire H.
SommeSiNom.xls
eric
gryffin01
>
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
6 oct. 2015 à 15:10
6 oct. 2015 à 15:10
Bonjour, je suis en train de me poser la même question mais vu que je ne sais pas a quoi correspond le B9, la colonne F ou la colonne H, je ne sais pas l'appliquer correctement. Pouvez vous donner une explication a cette formule SVP ?
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 239
>
gryffin01
6 oct. 2015 à 19:06
6 oct. 2015 à 19:06
Bonjour gryffin01,
4 ans après je ne me rappelle pas les détails et rien ne dit que ce soit adapté à ton problème.
Démarre ta question dans un nouveau topic avec un fichier de travail, les explications et le résultat attendu (le déposer sur cjoint.com et coller dans ta question le lien fourni)
Ajoute le lien vers ce post aussi : https://forums.commentcamarche.net/forum/affich-21436548-somme-de-cellule-portant-le-meme-nom-sur-exce#18
eric
4 ans après je ne me rappelle pas les détails et rien ne dit que ce soit adapté à ton problème.
Démarre ta question dans un nouveau topic avec un fichier de travail, les explications et le résultat attendu (le déposer sur cjoint.com et coller dans ta question le lien fourni)
Ajoute le lien vers ce post aussi : https://forums.commentcamarche.net/forum/affich-21436548-somme-de-cellule-portant-le-meme-nom-sur-exce#18
eric
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 239
31 mars 2011 à 07:18
31 mars 2011 à 07:18
Bonjour,
Parles-tu réellement de nom ou de contenu ?
Sur excel on peut nommer une cellule ou une plage...
Si tu parles de contenu :
=SOMME.SI(Feuil1!A1:E10;"aqueduc";Feuil2!A1:E10)
si tu parles de nom :
=SOMME(aqueduc)
eric
Parles-tu réellement de nom ou de contenu ?
Sur excel on peut nommer une cellule ou une plage...
Si tu parles de contenu :
=SOMME.SI(Feuil1!A1:E10;"aqueduc";Feuil2!A1:E10)
si tu parles de nom :
=SOMME(aqueduc)
eric
C'est la cellule qui porte un nom, ca me facilite la tache, car je dois mettre les même valeurs à plusieurs endroit.
C'est un très gros fichier. J'ai 134 noms de cellule sur 17 feuilles excel. C'est pour faire le suivi d'un projet. Le but d'additionner les noms de cellule, c'est que je veux avoir comme un liste d'épicerie, quantité d'items à acheter.
Malheureusement les 2 formules ne fonctionne pas, j'ai l'impression que les formules ne veulent pas tenir compte du nom de la cellule.
Merci
C'est un très gros fichier. J'ai 134 noms de cellule sur 17 feuilles excel. C'est pour faire le suivi d'un projet. Le but d'additionner les noms de cellule, c'est que je veux avoir comme un liste d'épicerie, quantité d'items à acheter.
Malheureusement les 2 formules ne fonctionne pas, j'ai l'impression que les formules ne veulent pas tenir compte du nom de la cellule.
Merci
mic13710
Messages postés
1087
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
13 mai 2021
355
31 mars 2011 à 13:04
31 mars 2011 à 13:04
S'il s'agit d'additionner des cellules portant le même nom, la formule =somme(le nom des cellules) fonctionne très bien même sur des cellules non contiguës.
Avez vous nommé vos cellules en même temps ? En clair, êtes vous sûr que vos cellules font partie du même nom ?
Michel
Avez vous nommé vos cellules en même temps ? En clair, êtes vous sûr que vos cellules font partie du même nom ?
Michel
boulidore
Messages postés
89
Date d'inscription
lundi 29 janvier 2007
Statut
Membre
Dernière intervention
26 août 2014
3
31 mars 2011 à 13:03
31 mars 2011 à 13:03
bonjour,
tu as moyen d'envoyer ton fichier ? avec ça : http://www.cijoint.fr
tu as moyen d'envoyer ton fichier ? avec ça : http://www.cijoint.fr
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour boulidore
Je ne peux t'envoyer le fichier original, car c'est un peu confidentiel. Parcontre, je t'envoi un fichier avec explication sur la FEUIL3 qui représente ce que je recherche.
Merci de votre aide
http://www.cijoint.fr/cjlink.php?file=cj201103/cij7WlfK5K.xls
Je ne peux t'envoyer le fichier original, car c'est un peu confidentiel. Parcontre, je t'envoi un fichier avec explication sur la FEUIL3 qui représente ce que je recherche.
Merci de votre aide
http://www.cijoint.fr/cjlink.php?file=cj201103/cij7WlfK5K.xls
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 413
31 mars 2011 à 15:16
31 mars 2011 à 15:16
Bonjour en attendant Eric qui travaille le pauvre.
un peu compliquée votre construction, mais enfin, c'est vous qui voyez;
essayez en C9, à tirer vers le bas:
=SOMME.SI(formule!$E$5:$E$12;INDIRECT(B9);formule!$E$5:$E$12)
à priori ça donne le résultat que vous attendez en E9!
crdlmnt
un peu compliquée votre construction, mais enfin, c'est vous qui voyez;
essayez en C9, à tirer vers le bas:
=SOMME.SI(formule!$E$5:$E$12;INDIRECT(B9);formule!$E$5:$E$12)
à priori ça donne le résultat que vous attendez en E9!
crdlmnt
mic13710
Messages postés
1087
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
13 mai 2021
355
31 mars 2011 à 15:31
31 mars 2011 à 15:31
OK Vaucluse, vous avez compris ce qu'il fallait faire. Je n'avais pas du tout saisi à quoi servait cette feuille formule.
Michel
Michel
Vaucluse
Je viens de transposer la formule dans mon fichier. Il y a encore un problème.
La formule addition encore toutes les valeurs et non les nom de cellule. Exemple, aqueduc vaut 20 alors ta formule addition toutes les cellule ayant 20 a l'intérieur.
Ca fait la même chose si 2 nopm de cellule on la même valeur
Je te renvoi le fichier avec le probleme
http://www.cijoint.fr/cjlink.php?file=cj201103/cijue6NIQr.xls
Je viens de transposer la formule dans mon fichier. Il y a encore un problème.
La formule addition encore toutes les valeurs et non les nom de cellule. Exemple, aqueduc vaut 20 alors ta formule addition toutes les cellule ayant 20 a l'intérieur.
Ca fait la même chose si 2 nopm de cellule on la même valeur
Je te renvoi le fichier avec le probleme
http://www.cijoint.fr/cjlink.php?file=cj201103/cijue6NIQr.xls
Vaucluse
Messages postés
26496
Date d'inscription
lundi 23 juillet 2007
Statut
Contributeur
Dernière intervention
1 avril 2022
6 413
31 mars 2011 à 17:09
31 mars 2011 à 17:09
là je ne comprend pas
pourquoi il y aurait dans la feuille nom colonne D des cellules qui auraient une valeur 20 qui ne soit pas nommée =Aqueduc?
Qu'est ce qui différencierait ces cellules des réelles Aqueduc?
Pourquoi taper 20 dans la cellule si le choix d'origine (compliqué) est de placer =Aqueduc pour afficher 20?
pourquoi il y aurait dans la feuille nom colonne D des cellules qui auraient une valeur 20 qui ne soit pas nommée =Aqueduc?
Qu'est ce qui différencierait ces cellules des réelles Aqueduc?
Pourquoi taper 20 dans la cellule si le choix d'origine (compliqué) est de placer =Aqueduc pour afficher 20?
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 778
30 mars 2011 à 23:32
30 mars 2011 à 23:32
Bonjour,
Si tu as simplement besoin de la somme (mais du résultat dans une cellule) voici une méthode manuelle :
Excel 2007 : Accueil / Rechercher
Excel 2003 Édition / Rechercher
Rechercher : =aqueduc / Rechercher tout / Ctrl + A (sélectionne toutes les cellules concernées)
La somme est affichée en bas, dans la barre d'état.
Sinon, je ne pense pas que ce soit possible avec une formule, il faut écrire une macro.
Si tu as simplement besoin de la somme (mais du résultat dans une cellule) voici une méthode manuelle :
Excel 2007 : Accueil / Rechercher
Excel 2003 Édition / Rechercher
Rechercher : =aqueduc / Rechercher tout / Ctrl + A (sélectionne toutes les cellules concernées)
La somme est affichée en bas, dans la barre d'état.
Sinon, je ne pense pas que ce soit possible avec une formule, il faut écrire une macro.
mic13710
Messages postés
1087
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
13 mai 2021
355
Modifié par mic13710 le 31/03/2011 à 15:22
Modifié par mic13710 le 31/03/2011 à 15:22
Pas très clair ce que vous demandez.
Dans les résultats vous dites aqueduc devrait donner 60. Pour moi aqueduc = 20.
Aqueduc 700 devrait donner 70 et vous dites que le résultat devrait donner 140.
En clair je ne vois pas de corrélation entre les données et le résultat que vous souhaitez obtenir.
Pourquoi il n'y aurait pas de valeur en face des aqueduc 500, 600, 800 et 900 ?
A quoi sert la feuille formule ?
Bref, il faudrait nous en dire plus pour qu'on comprenne.
Michel
Dans les résultats vous dites aqueduc devrait donner 60. Pour moi aqueduc = 20.
Aqueduc 700 devrait donner 70 et vous dites que le résultat devrait donner 140.
En clair je ne vois pas de corrélation entre les données et le résultat que vous souhaitez obtenir.
Pourquoi il n'y aurait pas de valeur en face des aqueduc 500, 600, 800 et 900 ?
A quoi sert la feuille formule ?
Bref, il faudrait nous en dire plus pour qu'on comprenne.
Michel
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 778
Modifié par Patrice33740 le 31/03/2011 à 17:20
Modifié par Patrice33740 le 31/03/2011 à 17:20
Re,
Avec une fonction personnalisée (macro) à mettre dans un module :
Pour l'utiliser mettre la formule suivante dans la cellule :
=Sommenom("aqueduc")
Cordialement
Patrice
Avec une fonction personnalisée (macro) à mettre dans un module :
Private Function SommeNom(Nom As String) As Double Dim cel As Range Application.Volatile Application.Calculation = xlCalculationManual For Each cel In ActiveSheet.UsedRange.Cells If cel.Formula = "=" & Nom Then SommeNom = SommeNom + cel.Value End If Next cel Application.Calculation = xlCalculationAutomatic End Function
Pour l'utiliser mettre la formule suivante dans la cellule :
=Sommenom("aqueduc")
Cordialement
Patrice
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 778
31 mars 2011 à 17:00
31 mars 2011 à 17:00
PS : la valeur (aqueduc) doit être numérique
Merci Patrice33740
La macro fait le traivail. Mais je ne veux pas t'en demander trop, mais est-ce que tu peux ajouter une sélection de champ à cette macro. Pour l'instant, je dois utiliser la macro dans chaque feuille et transférer dans une feuille totaux. Avec la possibilité de sélectionner, ce serait parfait.
Merci beaucoup Patrice, tu ne sais pas comment tu m'aide.
La macro fait le traivail. Mais je ne veux pas t'en demander trop, mais est-ce que tu peux ajouter une sélection de champ à cette macro. Pour l'instant, je dois utiliser la macro dans chaque feuille et transférer dans une feuille totaux. Avec la possibilité de sélectionner, ce serait parfait.
Merci beaucoup Patrice, tu ne sais pas comment tu m'aide.
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 239
31 mars 2011 à 18:25
31 mars 2011 à 18:25
Re,
Tu peux jeter un oeil à ma proposition juste en dessous (post 18) voir si c'est ce qui te manque
eric
Tu peux jeter un oeil à ma proposition juste en dessous (post 18) voir si c'est ce qui te manque
eric
31 mars 2011 à 12:48