Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Power Pivot Créer un formule à partir d'un tableau croisé dynamique avec segments

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 !

cindy02

XLDnaute Nouveau
Bonjour.
Je suis en création d'un fichier tableau de bord qui utilise les tableaux croisés dynamiques, les segments, et power pivot pour des indicateurs.
Sur une feuille, j'ai besoin d'intégrer un calcul qui vient piocher dans un tableau croisé dynamique la masse salariale afin de calculer des frais des structure qui sont différents en fonction de l'activité.
En effet, j'ai 3 types d'activités "C", "E" et "H" auxquels je dois appliquer des coefficients différents, ex : C=28 %, E=13% et H=35%.
Lorsque j'ai bien les 3 activités présentes, ma formule fonctionne. Cependant, dès lors que j'applique un filtre sur le segment, mon calcul devient une erreur car des cellules sources disparaissent du TCD.
Ex : Masse salariale C = 3000 €, E = 800 € et H = 5000 €.
Ma formule : Frais de structures cumulés = ("Masse salariale C"*28/100) + ("Masse salariale E"*13/100) + ("Masse salariale H"*35/100)
Quand je fais un requête segment sur l'activité C, H ou E disparaissent de mon TCD, du coup ma formule devient erreur.
Comment intégrer dans ma formule une condition qui vient s'appliquer sur un filtre ?
Je joins un fichier pour exemple.
Merci beaucoup.

Cindy
 

Pièces jointes

Bonjour,
Intégrer SIERREUR dans la formule :
VB:
=SIERREUR(LIREDONNEESTABCROISDYNAMIQUE("masse salariale";$E$6;"Activités";"C")*B2;0)+SIERREUR(LIREDONNEESTABCROISDYNAMIQUE("masse salariale";$E$6;"Activités";"E")*B3;0)+SIERREUR(LIREDONNEESTABCROISDYNAMIQUE("masse salariale";$E$6;"Activités";"H")*B4;0)
Cordialement.
 
Remplacez *B2 par un recherchev :
RECHERCHEV("C";$A$2:$B$4;2;FAUX) et de même pour les deux autres lettres
Avec un sierreur pour chaque terme au cas où la lettre serait absente :

=SIERREUR(LIREDONNEESTABCROISDYNAMIQUE("masse salariale";$E$6;"Activités";"C")*RECHERCHEV("C";$A$2:$B$4;2;FAUX);0)+SIERREUR(LIREDONNEESTABCROISDYNAMIQUE("masse salariale";$E$6;"Activités";"E")*RECHERCHEV("E";$A$2:$B$4;2;FAUX);0)+SIERREUR(LIREDONNEESTABCROISDYNAMIQUE("masse salariale";$E$6;"Activités";"H")*RECHERCHEV("H";$A$2:$B$4;2;FAUX);0)

Cordialement
 
- 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

Réponses
15
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…