Somme Multi Feuilles avec condition

Bonsoir à tous,

Je cherche à faire une synthèse sur la première feuille de mon classeur et pour ça souhaite faire la somme des cellules C3 de toutes les autres feuilles mais en fonction du Texte qui ce trouve sur les cellules B1 de toutes ces feuilles.

Je joins un exemple avec le résultat fait “à la Mano !!!
Le But étant d’avoir une synthèse correcte avec un nombre de feuille beaucoup plus important !

Essai Tableau Synthèse.xlsx (12,0 Ko)

Merci d’avance pour vos lumières !

Bonjour,
Je te propose deux façons de faire:

-1) Avec une formule
=SOMMEPROD(SOMME.SI(INDIRECT("Feuil"&LIGNE($2:$5)&"!B1");B3;INDIRECT("Feuil"&LIGNE($2:$5)&"!C3")))
la formule calcule sur critère de la valeur de B1 = TYPE A ou B, sur les feuilles de 2 à 5 (dans ton exemple) et somme les cellules C3. La fonction LIGNE() correspond au nom des “Feuil” , ici de Feuil2 à Feuil5.
Incovénient, les feuilles ne doivent pas être renommées.

-2) Avec une Fonction Perso

Function SommeSiPerso(CellSomme As Range, CellCrit As Range, ValCrit As String)
  Dim f As Worksheet
  Application.Volatile
    For Each f In Worksheets
      If LCase(f.Range(CellCrit.Address)) = LCase(ValCrit) Then _
      SommeSiPerso = SommeSiPerso + f.Range(CellSomme.Address)
    Next
End Function

LA fonction doit-être placée dans un MODULE depuis le développeur (ALT F11) et le classeur enregistré en *.XLSM .
Ce qui donne : =SommeSiperso($C$3;$B$1;"Type a") ou =SommeSiperso($C$3;$B$1;B3) , suivant si le critère correspond à la cellule B3

Essai Tableau Synthèse.xlsm (19,5 Ko)

1 « J'aime »

Merci “Mimimathy” pour ta réponse et tes solutions, j’ai opté pour la deuxième car dans mon Fichiers les Feuilles peuvent-être renommées.

:man: