Tagged: PowerBI Fonction DAX
- This topic has 2 replies, 2 voices, and was last updated 5 years, 1 month ago by
Matthieu.
-
AuthorPosts
-
19 April 2021 at 4 h 37 min #89702
Matthieu
ParticipantBonjour à tous,
Le fichier Excel ci-joint contient 3 colonnes : Catégorie, % et % cumulé par Catégorie. Les colonnes catégories et % sont des données sources rentrées en dur. La 3eme colonne, % cumulé par Catégorie, contient la formule suivante (2eme ligne du xlsx): =SOMME.SI(A:A;A2;B:B)
–> Cette dernière permet d’afficher pour chaque ligne le % cumulé de la catégorie concernée.Objectif : Je cherche à retranscrire cette formule dans le fichier pbix ci-joint (sous powerBI Desktop) en langage DAX, par l’intermédiaire d’une colonne calculée.
La fonction DAX “CALCULATE” semble être la plus appropriée pour effectuer l’équivalent de la fonction “SOMME.SI” d’Excel, cependant je ne trouve que des exemples permettant de sommer pour une catégorie précise, exemple en langage DAX :
% Cumulé par Catégorie = CALCULATE(
sum(‘Somme Catégorie'[%]),
filter(
‘Somme Catégorie’,
‘Somme Catégorie'[Catégorie] = “Catégorie 1″ ))Je cherche donc à pouvoir sommer les % des catégories tout en sachant que la catégorie sera variable dans ma fonction et non pas fixé comme dans l’exemple ci-dessus.
% Cumulé par Catégorie = CALCULATE(
sum(‘Somme Catégorie'[%]),
filter(
‘Somme Catégorie’,
‘Somme Catégorie'[Catégorie] = ” ? ” ))En vous remerciant pour votre attention,
Bonne journée
Attachments:
You must be logged in to view attached files.19 April 2021 at 8 h 59 min #89722Kim Leblanc
ParticipantBonjour,
Il faudrait y aller avec ceci:
% Cumulé par Catégorie =
var cat = ‘Somme Catégorie'[Catégorie]
RETURN
CALCULATE(
sum(‘Somme Catégorie'[%]),
filter(
all(‘Somme Catégorie’),
‘Somme Catégorie'[Catégorie] =cat ))On met en variable (var cat) la catégorie de la ligne actuelle.
On utilise ensuite un all dans le filter pour ignorer les contextes de filtre sur la table Somme Catégorie puit on va chercher la somme en fonction de la variable cat.Kim
20 April 2021 at 3 h 39 min #89740Matthieu
ParticipantBonjour,
Merci pour votre retour rapide, cette solution utilisant une variable fonctionne super bien !
Bonne journée
-
AuthorPosts
- You must be logged in to reply to this topic.




