Club Power BI

Please login or click SIGN UP FOR FREE to create your PowerBIUG account to join this user group.
 View Only
  • 1.  Comment transformer un filtre en formule DAX ?

    Posted Feb 05, 2023 06:32 PM
    Edited by Yannick Pavard Feb 05, 2023 09:58 PM
    Bonjour,

    J'ai plusieurs données que j'affiche via une carte (card) sur mon dashboard, en l'occurrence dans l'exemple que je veux vous montrer, il s'agit du total d'usagers qui ont été jumelés avec un bénévole.

    Je vais donc chercher dans la table "Appel-Usagers", la colonne Usagers et je prends le nombre d'usagers trouvés :


    Puis j'applique un filtre pour ne ressortir que toutes les valeurs ou y'a déjà une valeur (un bénévole d'attribué) sur la colonne "Bénévoleattribué" (différent de vide).

    Sauf que je voudrais prendre cette valeur (qui est 41) et via un calcul, donc via une nouvelle mesure, faire un calcul avec DAX pour connaitre le pourcentage que cela représente par rapport à la valeur de l'an dernier que j'ai stocké dans une table.

    Ça pourrait ressembler à quelque chose comme : 

    USAGERS_JUMELES_% = ((SUM('Appel-Usagers'[Usagers])-SUM(_OLDATA_TRANSPORT[USAGERS_JUMELES]))/SUM(_OLDATA_TRANSPORT[USAGERS_JUMELES]))

    En tout cas, c'est ainsi que je procède pour des valeurs où il n'y a pas de filtre et ça marche bien. J'affiche la Nouvelle mesure a coté de la valeur de cette année, ce qui donne ceci pour un autre calcul :

    Excepté que dans mon exemple, j'ai ce fameux filtre et je ne sais pas comment le mettre dans la formule ci-dessus. J'imagine qu'il faut utiliser une autre fonction qui inclut le filtre ?

    J'ai d'autres calculs avec deux filtres aussi et je ne sais pas si c'est la même méthode qui s'appliquerait ?


    D'ailleurs dans le passé j'ai déjà utilisé d'autres formules comme celle-ci :


    Mais ça fait longtemps et je ne sais pas vraiment comment l'utiliser et si je pourrais l'appliquer au besoin actuel.

    Merci

    Yannick


  • 2.  RE: Comment transformer un filtre en formule DAX ?

    Posted Feb 06, 2023 12:08 PM

    Bonjour, 

    J'espère avoir bien compris ton exemple.

    Pour ma part je ferais une formule comme ceci : 

    USAGERS_JUMELES_% =
    CALCULATE (
    (SUM ( 'Appel-Usagers'[Usagers] ) - SUM ( _OLDATA_TRANSPORT[USAGERS_JUMELES] )) / SUM ( _OLDATA_TRANSPORT[USAGERS_JUMELES] ),
    FILTER ( '_OLDATA_TRANSPORT', '_OLDATA_TRANSPORT'[Bénévoleattribué] <> "" )
    )

    Dis moi si cela fonctionne ou pas comme tu veux, sinon je me pencherai dessus à nouveau :) 

    Bonne soirée,

    Thezlud



    ------------------------------
    ludovic ROBIN
    ------------------------------



  • 3.  RE: Comment transformer un filtre en formule DAX ?

    Posted Feb 06, 2023 08:04 PM
    Salut Ludovic,

    Merci pour ta réponse, finalement ce que je vois, c'est que la formule que j'ai inscrite à la fin que j'avais déjà utilisé était une bonne piste, vu que tu as utilisé la même formule avec mes valeurs.

    J'ai fait un essai avec un autre exemple (car l'exemple que je t'ai donné finalement n'était pas applicable) et ça a fonctionné numéro 1 !

    Voici ce que ça donne : 

    BENEVOLES_ACTIFS_% =
    CALCULATE (
    (COUNTROWS('Appel-Bénévoles') - SUM (_OLDATA_BONJOUR[BENEVOLES_ACTIFS])) / SUM (_OLDATA_BONJOUR[BENEVOLES_ACTIFS]),
    FILTER ( 'Appel-Bénévoles', 'Appel-Bénévoles'[Désactivédepuis le] = "" )
    )

    Ça semble simple, dans la fonction CALCULATE, j'indique le calcul que je veux appliquer ou la donnée que je souhaite aller chercher et ensuite dans FILTER j'ajoute le filtre que je veux appliquer ?

    Ça va me dépanner pour plusieurs données à récupérer, merci !

    Mais maintenant faut que j'applique cette fonction avec plusieurs filtres, car j'ai d'autres exemples mais avec deux filtres.

    J'ai utilisé la fonction ainsi : 

    USAGERS_TRANSPORTES_% =
    CALCULATE (
    (COUNTROWS(DISTINCT('Liste des transports'[Usagers])) - SUM (_OLDATA_TRANSPORT[USAGERS_TRANSPORTES])) / SUM (_OLDATA_TRANSPORT[USAGERS_TRANSPORTES]),
    FILTER ('Liste des transports', 'Liste des transports'[Archiver] = "Clos" && 'Liste des transports'[Bénévole] <> "")
    )

    Et ça semble fonctionner... donc j'en conclus que je peux utiliser plusieurs filtres sur la même table avec le &&, c'est bien ca ?

    Merci


    ------------------------------
    Yannick Pavard
    ------------------------------



  • 4.  RE: Comment transformer un filtre en formule DAX ?

    Posted Feb 06, 2023 08:18 PM
    Quand le résultat s'affiche, si c'est négatif je vais avoir -33% par exemple, mais si c'est positif cela va s'afficher 33%.

    Comment faire pour qu'un + s'affiche devant le 33% quand c'est au dessus de 0% ? Ca doit être dans le formatage non ?

    Merci

    ------------------------------
    Yannick Pavard
    ------------------------------



  • 5.  RE: Comment transformer un filtre en formule DAX ?

    Posted Feb 06, 2023 08:40 PM
    Hello

    C'est encore moi. Je crée une troisième réponse pour ceux qui voudraient répondre à une de mes questions en particulier.

    J'ai utilisé la fonction cité plus haut avec un autre exemple, mais dans ce cas précis ca ne marche pas :

    BENEVOLES_JUMELES_B% =
    CALCULATE (
    (COUNTROWS('Appel-Bénévoles') - SUM (_OLDATA_BONJOUR[BENEVOLES_JUMELES])) / SUM (_OLDATA_BONJOUR[BENEVOLES_JUMELES]),
    FILTER ( 'Appel-Bénévoles', 'Appel-Bénévoles'[TOTAL] <> "00:00:00")
    )

    Le message d'erreur :


    Et le contenu de la colonne TOTAL : 



    Une idée comment modifier la fonction ?

    Merci


    ------------------------------
    Yannick Pavard
    ------------------------------