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

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

  • TEST FS DEMANDE FORUM.xlsx
    24.9 KB · Affichages: 19

goube

XLDnaute Accro
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.
 

Dugenou

XLDnaute Barbatruc
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
 

chris

XLDnaute Barbatruc
Bonjour à tous

Tu confonds PowerPivot et PowerQuery

Tu as chargé le tableau source du TCD dans PowerQuery mais tu ne l'utilises pas

C'est là qu'il faut calculer les frais de structure puis construire le TCD sur la requête
 

Pièces jointes

  • Frais_Structure_PQ.xlsx
    28.9 KB · Affichages: 27

cindy02

XLDnaute Nouveau
Merci beaucoup pour vos réponses !!! et si rapides !!
J'ai testé avec SIERREUR et tout fonctionne correctement.

Merci encore, je suis novice avec power pivot et je cherchais depuis plusieurs heures…

Cindy
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…