Somme de cellules de meme nom sur differentes feuilles

  • Initiateur de la discussion Initiateur de la discussion tarinrj
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

tarinrj

XLDnaute Nouveau
Bonjour à vous et merci d'avance aux vaillants qui veillent ici en ce 15 aout😎.......

Mon probleme est le suivant:
Sur une feuille de mon classeur, je voudrai faire la somme de cellules nomées sur differnetes feuilles.
Autrement dit, j'ai une cellule nomée "grand" sur differentes feuilles du classeur, je voudrait obtenir la somme des valeurs de toutes les cellules nomées "grand" du classeur????
La valeur "grand" n'est jamais au meme endroit sur toutes les feuilles.
Je preferais avoir la somme du classeur complet plutot que de lui specifier les feuille ou aller chercher.
Je pensai faire la somme de toutes les cellules du classeur portant le nom "grand", mais je n'y arrive pas....
Jamais simple d'expliquer clairement une problématique, je joint un fichier pour éclaircir ma demande.

Dans l'attente, bonne vavances à toutes et tous.
 

Pièces jointes

Re : Somme de cellules de meme nom sur differentes feuilles

Bonjour,

J'ai l'impression qu'Excel n'aime pas qu'on "joue" avec un nom identique sur plusieurs feuilles mais avec des références différentes.

Une proposition pour simplifier le problème :

Sur chaque feuille, utiliser une même cellule (toujours la même) pour récupérer les trois valeurs. Les colonnes (ou lignes) contenant ces valeurs pourraient être masquées.

Ensuite une simple formule suffirait :

Code:
=SOMME(Feuil2:Feuil4!J1)

@+
 
Re : Somme de cellules de meme nom sur differentes feuilles

Bonjour Tarinrj, bonjour le forum,

Je sais pas faire par formules alors une proposition VBA avec la macro ci-dessous :
Code:
Sub Macro1()
Dim o As Object 'déclare la variable o (Onglet)
Dim sg As Double 'déclare la variable sg (Somme des Grands)
Dim sm As Double 'déclare la variable sm (Somme des Moyens)
Dim sp As Double 'déclare la variable sp (Somme des Petits)

For Each o In Sheets 'boucle sur tous les onglets du classeur
    On Error Resume Next 'gestion des erreurs (en cas d'erreur, passe à la ligne suivante)
    sg = sg + o.Range("grand") 'définit la somme sg
    sm = sm + o.Range("moyen") 'définit la somme sm
    sp = sp + o.Range("petit") 'définit la somme sp
    If Err <> 0 Then Err = 0 'si une erreur a été générée, annule l'erreur
    On Error GoTo 0 'annule la gestion des erreurs
Next o 'prochain onglet de la boucle
MsgBox "Somme des grands : " & sg & Chr(13) _
    & "Somme des moyens : " & sm & Chr(13) _
    & "Somme des petits :" & sp 'message indiquant les sommes
End Sub

[Édition]
Bonjour Tibo on s'est croisé...
 
Re : Somme de cellules de meme nom sur differentes feuilles

Bonjour,

J'ai l'impression qu'Excel n'aime pas qu'on "joue" avec un nom identique sur plusieurs feuilles mais avec des références différentes.

Une proposition pour simplifier le problème :

Sur chaque feuille, utiliser une même cellule (toujours la même) pour récupérer les trois valeurs. Les colonnes (ou lignes) contenant ces valeurs pourraient être masquées.

Ensuite une simple formule suffirait :

Code:
=SOMME(Feuil2:Feuil4!J1)

@+

Merci pour ta réponse.
ça serai trop simple ainsi, pour certaines raisons les cellules à aditionner ne peuvent pas ce retrouver systematiquement à la meme place sur chaque feuilles.....
 
Re : Somme de cellules de meme nom sur differentes feuilles

Bonjour Tarinrj, bonjour le forum,

Je sais pas faire par formules alors une proposition VBA avec la macro ci-dessous :
Code:
Sub Macro1()
Dim o As Object 'déclare la variable o (Onglet)
Dim sg As Double 'déclare la variable sg (Somme des Grands)
Dim sm As Double 'déclare la variable sm (Somme des Moyens)
Dim sp As Double 'déclare la variable sp (Somme des Petits)

For Each o In Sheets 'boucle sur tous les onglets du classeur
    On Error Resume Next 'gestion des erreurs (en cas d'erreur, passe à la ligne suivante)
    sg = sg + o.Range("grand") 'définit la somme sg
    sm = sm + o.Range("moyen") 'définit la somme sm
    sp = sp + o.Range("petit") 'définit la somme sp
    If Err <> 0 Then Err = 0 'si une erreur a été générée, annule l'erreur
    On Error GoTo 0 'annule la gestion des erreurs
Next o 'prochain onglet de la boucle
MsgBox "Somme des grands : " & sg & Chr(13) _
    & "Somme des moyens : " & sm & Chr(13) _
    & "Somme des petits :" & sp 'message indiquant les sommes
End Sub

[Édition]
Bonjour Tibo on s'est croisé...

Ok, par contre je n'ai pas instalé le module vba pour editer/integrer du code sur mes feuilles et je n'ai pas le cd sous la main.....
Y a une appli téléchargeable pour me dépanner?
 
Re : Somme de cellules de meme nom sur differentes feuilles

J ai veu faire la somme de cellules de meme nom dans mon classeur.
Si excel n aime pas jouer avec les noms à travers differentes feuilles, Il y a peut etre une autre methode que de nomer les cellules?
 
Re : Somme de cellules de meme nom sur differentes feuilles

rere,

Nous sommes d'accord, mais les formules que j'ai placées en colonne O (à placer ailleurs si nécessaire) permettent de récupérer les différentes valeurs (peu importe où elles sont placées) et surtout, ont un emplacement fixe, emplacement auquel il est fait référence dans la première feuille.

Peut-être que quelque chose m'échappe...

@+
 
Re : Somme de cellules de meme nom sur differentes feuilles

Bonjour tarinj, Tibo, Robert

une solution si tout tes onglets s'appellent Feuil1, 2, 3...
(en m'inspirant de ce qui est proposé làhttps://www.excel-downloads.com/threads/cumuler-des-feuilles-avec-indirect.179469/, je n'en connaissais pas tant sur somme.si...)

Code:
=SOMME(SOMME.SI(INDIRECT("Feuil"&LIGNE(2:4)&"!grand");"<>0"))

fonction matricielle, à valider par ctrl+maj+entrée
ligne(2:4) signifie qu'il faut chercher grand dans feuil2 à feuil4, à adapter en fonction de ton classeur

cdlt
 
Re : Somme de cellules de meme nom sur differentes feuilles

Bonjour tout le monde,
une petite fonction personnalisée à tester :
Code:
Function SommeNomDéfini(Nom As String) As Double
Dim i As Byte, j As Byte, s As Variant
For i = 1 To Sheets.Count
    For j = 1 To Sheets(i).Names.Count
        s = Split(Sheets(i).Names(j).Name, "!")
        If s(1) = Nom Then SommeNomDéfini = SommeNomDéfini + Sheets(i).Names(j).RefersToRange.Value
    Next j
Next i
End Function
=SommeNomDéfini("grand")
ramène 30
Code:
=SommeNomDéfini("moyen")
ramène 35.
A+
 
Re : Somme de cellules de meme nom sur differentes feuilles

Bonjour tarinj, Tibo, Robert

une solution si tout tes onglets s'appellent Feuil1, 2, 3...
(en m'inspirant de ce qui est proposé làhttps://www.excel-downloads.com/threads/cumuler-des-feuilles-avec-indirect.179469/, je n'en connaissais pas tant sur somme.si...)

Code:
=SOMME(SOMME.SI(INDIRECT("Feuil"&LIGNE(2:4)&"!grand");"<>0"))

fonction matricielle, à valider par ctrl+maj+entrée
ligne(2:4) signifie qu'il faut chercher grand dans feuil2 à feuil4, à adapter en fonction de ton classeur

cdlt

Un grand merci de reflechir pour moi.....
Malheureusement mes feuilles sont renomées par des noms de clients.....
 
Re : Somme de cellules de meme nom sur differentes feuilles

Re
As-tu testé ma 1ère proposition ?
Plus simple :
Code:
Function SommeNomDéfini(Nom As String) As Double
Dim i As Byte, j As Byte
Application.Volatile
For i = 1 To Sheets.Count
    For j = 1 To Sheets(i).Names.Count
        If Sheets(i).Names(j).Name Like "*" & Nom Then SommeNomDéfini = SommeNomDéfini + _
        Sheets(i).Names(j).RefersToRange.Value
    Next j
Next i
End Function
J'utilise Like pour ramener le nom défini au lieu de passer par un split et j'ai rajouté Application.Volatile pour le recalcul automatique.
Même utilisation que celle décrite dans mon 1er message.
A+
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour