Somme de cellule portant le même nom sur Exce

Résolu
jimclermont -  
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'ai une feuille (A) de calcul avec plusieurs cellule portant des noms. ex. "=aqueduc" donne exemple 20$ se rapporte à une cellule d'une autre feuille (B).

Moi je veux faire la somme de toute les cellules de la feuille (A) qui comporte "=aqueduc".

Le problème c'est que j'ai une formule qui fonctionne à moitié SOMPROD. Elle adittionne tous les cellule qui on 20$ comme résultat.

Comment faire pour que la formule prenne en compte le nom de la cellule et non le montant donné par le nom de la cellule

Merci

A voir également:

9 réponses

Raymond PENTIER Messages postés 58985 Date d'inscription   Statut Contributeur Dernière intervention   17 350
 
"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 ?
6
jimclermont
 
Malheureusement ca ne fonctionne pas, j'ai fait un test qui devrait donner 300 et avec cette formule le résultat donne 0.
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
Re,

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
1
jimclermont
 
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
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
Re,

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
0
gryffin01 > eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention  
 
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 ?
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275 > gryffin01
 
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
0
jimclermont
 
Eriiic c'est parfait tu es un vrai pro

Merci infiniment, là je peux dire que le problème est résolu à 100%

Merci encore
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
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
0
jimclermont
 
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
0
mic13710 Messages postés 1087 Date d'inscription   Statut Membre Dernière intervention   357
 
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
0
boulidore Messages postés 89 Date d'inscription   Statut Membre Dernière intervention   3
 
bonjour,
tu as moyen d'envoyer ton fichier ? avec ça : http://www.cijoint.fr
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jimclermont
 
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
0
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
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
0
jimclermont
 
Vaucluse tu as la bonne solution merci énormément je viens d'éviter une autres journée de recherche.

Le problème est résolu

Good

Merci encore

Bonne fin de journée
0
mic13710 Messages postés 1087 Date d'inscription   Statut Membre Dernière intervention   357
 
OK Vaucluse, vous avez compris ce qu'il fallait faire. Je n'avais pas du tout saisi à quoi servait cette feuille formule.

Michel
0
jimclermont
 
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
0
Vaucluse Messages postés 26496 Date d'inscription   Statut Contributeur Dernière intervention   6 438
 
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?
0
Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
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.

-1
jimclermont
 
Merci pour ta réponse Patrice33740, mais malheureusement j'ai besoin d'avoir la somme dans une cellule(le résultat), car je dois mettre d'autres formules à partir de cette cellule. Est-ce que tu connais la macro nécessaire, j'en est essayé plusieurs et rien ne fonctionne.

merci
0
mic13710 Messages postés 1087 Date d'inscription   Statut Membre Dernière intervention   357
 
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
-1
jimclermont
 
C'est le total de toutes les cellules contenant un tiem.

La solution a été trouvé par Vaucluse

merci
0
Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
Re,

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
-1
Patrice33740 Messages postés 8561 Date d'inscription   Statut Membre Dernière intervention   1 780
 
PS : la valeur (aqueduc) doit être numérique
0
jimclermont
 
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.
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 275
 
Re,

Tu peux jeter un oeil à ma proposition juste en dessous (post 18) voir si c'est ce qui te manque
eric
0