XL 2013 a partir des donnees d'une feuille effectuer des calculs sur une autre feuille

  • Initiateur de la discussion Initiateur de la discussion jeanluck
  • 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 !

jeanluck

XLDnaute Nouveau
Salut chers tous,
merci pour toutes les publications tres enrichissantes que vous partagez. je vous demande de m'aider comment je pourrai faire la somme des plaintes, doleances remerciements, invitations et informations enregistres a chaque mois dans la colonne categorie sur une autre feuille.
merci de votre disponobilite et aide
 

Pièces jointes

Bonjour à tous,

Les cellules fusionnées ne sont pas top pour effectuer des calculs. Il y a une colonne supplémentaire masquée "C" pour palier à cela.

A essayer avec nb.si.ens
VB:
=NB.SI.ENS(Tableau1[moisBis];$A2;Tableau1[Categorie];B$1)

JHA
 

Pièces jointes

Bonsoir jeanluck, JHA,

En général les cellules fusionnées et VBA font très bon ménage.

Voyez le fichier .xlsm joint et cette fonction VBA :
VB:
Function TableauCroise(mois$, categorie$, colMois As Range, colCategorie As Range)
Dim plage As Range
Set plage = colMois.Find(mois, , xlValues)
If plage Is Nothing Then Exit Function
Set plage = Intersect(plage.MergeArea.EntireRow, colCategorie)
TableauCroise = Application.CountIf(plage, categorie) 'NB.SI
Le code doit être placé impérativement dans un module standard.

Formule en B2 de la feuille "Recap" =TableauCroise($A2;B$1;Sheet1!$B:$B;Sheet1!$G:$G)

Bonne nuit.
 

Pièces jointes

Bonjour jeanluck, le forum,

Notez que si l'on défusionne ou refusionne des cellules en colonne B de la 1ère feuille le tableau des résultats ne se met pas à jour.

Pour remédier à cela il faut forcer le recalcul des fonctions, par exemple avec ce code dans "Recap" :
VB:
Private Sub Worksheet_Activate()
Sheets("Sheet1").[B1] = "" 'force le recalcul des fonctions TableauCroise
End Sub
La macro se déclenche automatiquement quand on active la feuille.

A+
 

Pièces jointes

Bonsoir jeanluck, JHA,

En général les cellules fusionnées et VBA font très bon ménage.

Voyez le fichier .xlsm joint et cette fonction VBA :
VB:
Function TableauCroise(mois$, categorie$, colMois As Range, colCategorie As Range)
Dim plage As Range
Set plage = colMois.Find(mois, , xlValues)
If plage Is Nothing Then Exit Function
Set plage = Intersect(plage.MergeArea.EntireRow, colCategorie)
TableauCroise = Application.CountIf(plage, categorie) 'NB.SI
Le code doit être placé impérativement dans un module standard.

Formule en B2 de la feuille "Recap" =TableauCroise($A2;B$1;Sheet1!$B:$B;Sheet1!$G:$G)

Bonne nuit.
salut, comment traduire en francais cette formule =TableauCroise($A2;B$1;Sheet1!$B:$B;Sheet1!$G:$G)
 
- 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