TOPN dans power pivot

Accueil – Le CFO masqué Forums Power Pivot TOPN dans power pivot

Mots-clés :  DAX TOPN

  • Ce sujet contient 7 réponses, 2 participants et a été mis à jour pour la dernière fois par Stéphane Lorin, le il y a 5 mois et 4 semaines.
8 sujets de 1 à 8 (sur un total de 8)
  • Auteur
    Articles
  • #86529
    sylvain_laurent
    Participant

    Bonjour,

    Je débute avec le DAX et ça coince déjà 😉

    Je souhaite extraite un TOP4 d’un tableau, comme dans la capture d’écran en PJ.
    Seulement Power Pivot n’accepte pas la formule.

    “erreur sémantique : l’expression fait référence à plusieurs colonnes …”

    Dans DAX studio, la formule fonctionne bien.

    Une idée.

    Attachments:
    You must be logged in to view attached files.
    #86541
    Stéphane Lorin
    Participant

    Bonjour

    je ne veux pas vous démotiver mais je ne débute pas en DAX et je coince encore très souvent.

    la fonction TOPN renvoie une table et vous voulez dans une mesure. D’où l’erreur

    si vous êtes dans Excel il vous faut une table inversée (voir une de mes dernière intervention) et un EVALUATE devant.

    Stéphane

    #86543
    sylvain_laurent
    Participant

    Merci Stéphane pour ton retour.

    Sans faire de pub, j’ai vu cette vidéo intéressante :

    Et à partir de la 15ème minutes, il créé un TOPN dans une mesure dans Pivot.
    Donc je me suis dit, pourquoi pas !?

    Sinon je ferai dans une nouvelle colonne.

    #86544
    sylvain_laurent
    Participant

    En creusant un peu, effectivement l’exemple de la vidéo n’est pas du tout ce que je souhaite faire.

    Le TOPN utilisé dans la vidéo fonctionne car il est dans le CALCULATE.
    Bon je teste la solution de la table inversée.

    Et je vous tiens au courant, si ça peut en faire avancer certains…

    #86545
    sylvain_laurent
    Participant

    La méthode du tableau inversé + fonction EVALUATE puis TOPN fonctionne bien.

    Aussi j’ai ajouté un segment pour contrôler ce tableau et il est aussi impacté par la formule.
    Donc c’est exactement ce que je voulais.

    Maintenant je dois le mettre en œuvre dans mon application, avec mes vraies données.

    Encore merci à Stéphane, à la prochaine.

    Attachments:
    You must be logged in to view attached files.
    #86549
    sylvain_laurent
    Participant

    La méthode du tableau inversé + fonction EVALUATE puis TOPN fonctionne bien.

    Aussi j’ai ajouté un segment pour contrôler ce tableau et il est aussi impacté par la formule.
    Donc c’est exactement ce que je voulais.

    Maintenant je dois le mettre en œuvre dans mon application, avec mes vraies données.

    Attachments:
    You must be logged in to view attached files.
    #86551
    sylvain_laurent
    Participant

    Nouvelle requête toujours dans le même thème, cette fois-ci avec un classeur en exemple.

    Comme vu précédemment la fonction TOPN fonctionne bien avec la méthode “table inversée”.

    Maintenant, j’ai besoin d’avoir un TOP5 par année.
    Dans mon classeur exemple, dans la tableau “Tab_Frns” j’ai pour chaque années la somme des retards de livraison par fournisseurs.

    Et je souhaiterai avoir le TOP5 des fournisseurs les plus en retard, et cela pour chaque année.
    Avec un petit segment pour piloter l’année sélectionnée.

    Dans mon classeur, ça fonctionne partiellement.
    J’ai bien un TOP5 mais sur l’ensemble des années, puis ensuite le segment filtre l’année parmis le TOP5.

    Attachments:
    You must be logged in to view attached files.
    #86578
    Stéphane Lorin
    Participant

    Merci pour votre retour

    Je ne sais pas quel est l’objectif final mais un TCD classique avec un filtre “10 premiers” en choisissant les 5 plus hautes valeurs, un tri décroissant sur le retard et avec un segment par année vous donne le résultat attendu.
    A moins que votre projet soit bien plus complexe que ça, le DAX avec le TOPN n’est pas nécessaire ici.
    Stéphane

    Attachments:
    You must be logged in to view attached files.
8 sujets de 1 à 8 (sur un total de 8)
  • Vous devez être connecté pour répondre à ce sujet.