Création d’une mesure ou d’une colonne avec des conditions

Accueil – Le CFO masqué Forums Power BI Création d’une mesure ou d’une colonne avec des conditions

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

    Bonjour,

    Je souhaite ajouter une colonne ou une mesure dans mon tableau avec des conditions…
    Je galère depuis quelques temps, c’est pourquoi je viens solliciter votre aide.

    Explications :

    Dans mon tableau, une colonne est nommée “VITS_REG”, j’ai d’autres colonnes contenant des valeurs qui sont nommées “TV020, TV030, …, jusque TV130)

    Je souhaite donc une colonne supplémentaire à mon tableau (ou une mesure si c’est préférable ???) qui agirait de la sorte :

    Si la colonne “VITS_REG” = 2 alors le résultat serait (TV020 + TV030)
    Ou si la colonne “VITS_REG” = 4 alors le résultat serait (TV020 + TV030 + TV040 + TV050)
    Ou si la colonne “VITS_REG” = 8 alors le résultat serait (TV020 + TV030 + TV040 + TV050 + TV060 + TV070 + TV080 + TV090)

    Pouvez vous m’expliquer comment arriver à ce résultat ?

    Merci par avance

    Attachments:
    You must be logged in to view attached files.
    #89906
    Kim Leblanc
    Participant

    Bonjour,

    Vous pourriez passer par Power Query pour faire ce calcul. Vous pourriez dépivoter vos colonnes “TV020, TV030, …, jusque TV130 pour obtenir une colonne attribut contenant le nom de vos colonnes et une deuxième contenant la valeur pour chacune. (Idéalement sélectionnez les premières colonnes jusqu’à VITS_REG puis choisir l’option dépivoter les autres colonnes)

    Vous gardez ensuite que la partie numérique du nom de la colonne soit 2, 3, 4, … jusqu’à 13.

    Vous ajoutez ensuite une colonne conditionnelle où on affiche la valeur si la colonne attribut <= à la valeur inscrite dans la colonne VITS_REG, sinon affiche 0.

    Puis utiliser cette colonne pour faire la somme de vos valeurs.

    Comme ça si dans le future, il y a un ajout de colonne pour TV140, elle sera prise en compte dans le calcul.

    Au plaisir,

    Kim

    #89937
    Stéphane Lorin
    Participant

    Bonjour

    Je vous propose une autre approche :

    Sous Excel votre formule serait =SOMME(DECALER([@TV020];;;1;[@[E_SEC_VITS_REG]]))

    Avec PowerQuery, cela se traduit en List.Sum(List.Range(Record.ToList(_),5,[E_SEC_VITS_REG]))

    le caractère _ vous permet de récupérer l’enregistrement actuel
    la fonction Record.ToList transforme cet enregistrement en liste
    A partir de la 5e colonne vous voulez faire la somme de 2, 4 ou 8 éléments soit la valeur du champ [E_SEC_VITS_REG] : la fonction List.Range(Liste,5,[E_SEC_VITS_REG]) répond à ce besoin
    Il ne reste plus qu’à faire la somme avec List.Sum

    cordialement

    Stéphane

3 sujets de 1 à 3 (sur un total de 3)
  • Vous devez être connecté pour répondre à ce sujet.