POWER QUERY - création colonne avec fonction SI

Bonjour, je souhaite créer une colonne conditionnelle un peu compliqué pour mon petit niveau sur POWER QUERY.

dans un tableau EXCEL (crée à partir du requêteur POWER QUERY), j'ai 3 colonnes nommé budget inital / Réalisé / engagé.

je souhaite créer une colonne calculée qui fasse la chose suivante :

=si([BUDGET INITIAL]>0;SI([BUDGET INITIAL]-[ENGAGE]-[REALISE]>0;[BUDGET INITIAL]-[ENGAGE]-[REALISE];0);si([BUDGET INITIAL]-[ENGAGE]-[REALISE]<0;[BUDGET INITIAL]-[ENGAGE]-[REALISE];0))

je ne sais pas traduire cela dans le language QUERY.

quelqu'un peut m'aider ?

Bonjour

Déjà en logique Excel ce n'est pas optimisé :

  • soit on respecte tes parenthèses et ceci est équivalent
    =[BUDGET INITIAL]-[ENGAGE]-[REALISE]
  • soit tu veux 0 si le budget est à 0 et ceci suffit
    =SI([BUDGET INITIAL]=0;0;[BUDGET INITIAL]-[ENGAGE]-[REALISE])
    ce qui donne en PowerQuery
    =if [BUDGET INITIAL]=0 then 0 else [BUDGET INITIAL]-[ENGAGE]-[REALISE]
    sous réserve que le Budget soit 0 et non une cellule vide

merci pour votre retour rapide. cependant cela ne correspond pas tout à fait à mon besoin.

j'indique bien " si budget initial est > à 0" ( et non =0). deplus, j'incrémente un 2ème si dans le 1er si et je n'ai pas l'impression que dans les formules que tu vous m'avez proposé ceci ressorte.

RE

As-tu essayé tes formules dans la source Excel ?

Il semble que non car tu verrais que soit tu as une erreur d'imbrications, soit tu n'as pas le résultat voulu

Sinon je demande à voir...

je t’envoie un fichier EXCEL en exemple. il y avait, effectivement, une très légère erreur mais la 1ère formule aurait marché sans souci.

tu noteras que j'ai dû ajouter un 3ème si pour couvrir une éventualité que j'ai omis.

172classeur1.xlsx (8.78 Ko)

Bonjour,

Tu n'a pas un souci avec ta formule ?

2 conditions identiques !...

Cdlt.

iso4217
65classeur1-1.xlsx (13.46 Ko)

Désolé de mon retour tardif. A vrai dire j'ai répondu vendredi dernier mais j'ai dû oublié d’appuyer sur "envoyer" visiblement...

Je ne remet surtout pas en question vos remarques mais après un nouveau contrôle de ma formule, je ne vois rien de redondant.

Aussi, pour que cette dernière soit bien comprise de tous, j'ai ajouté une colonne de calcul supplémentaire dans le fichier que vous trouverez en PJ. nous arrivons au même résultat attendu mais avec une autre formule (utilisation des fonction OU & ET entre autre)

en espérant que cela vous éclaircira pour

165classeur1.xlsx (8.94 Ko)

trouver la solution à mon soucis dans POWER QUERY...

Bonjour à tous

On peut simplifier

if [Budget]=0 or Number.Abs(List.Sum({[Engagé],[Réalisé]}))>=Number.Abs([Budget]) then 0 else [Budget]-List.Sum({[Engagé],[Réalisé]})

Les Dieux de Power QUERY ont parlés ! cela fonctionne comme je le voulais.

je vous remercie encore une fois pour vos aides précieuses.

Rechercher des sujets similaires à "power query creation colonne fonction"