Power Query Ajout de colonnes calculées en cascade via AddRecords

Bonsoir à tous,

Je vous joins un exemple assez simple mais représentatif de ma problématique lors de l'ajout d'une colonne Records,

Ayant une grande volumétrie de données, je souhaite récupérer le résultat de l'étape précédente mais sans refaire le calcul qui est bien plus complexe en réalité,

Je joins un fichier exposant plus précisément ma problématique,

Merci d'avance pour votre aide,

Cordialement,

15test-records.xlsx (17.96 Ko)

Bonjour,

Comme tu peux le remarquer, une colonne est désignée par un [nom colonne], et une variable sans ces crochets.

Cependant, si tu mets des espaces (ou des caractères spéciaux) dans ta variable, il faut la borner par #"variable avec espaces"

Au final, ton code pourrait ressembler à cela :

let
    Source = Excel.CurrentWorkbook(){[Name="TEST"]}[Content],
    AddRecord = Table.AddColumn(Source, "Records", each [

    RTAT = [CA]-[CHARGES],

    #"APPLICATION COEF CA" = RTAT*[COEF],

    POSITIF = if #"APPLICATION COEF CA" >= 0 then #"APPLICATION COEF CA" else 0,

    NEGATIF = if #"APPLICATION COEF CA" <= 0 then #"APPLICATION COEF CA" else 0]),

    ExpandRecords = Table.ExpandRecordColumn(AddRecord, "Records", Record.FieldNames(Record.Combine(AddRecord[Records])))
in
    ExpandRecords

Bonne journée

Bonjour,

Seules les colonnes préexistantes à l'ajout doivent être entre [].
Les valeurs nouvellement calculées sont appelées par leur nom, avec l'ajout habituel de #"" en présence d'espace.

(elles ne sont pas encore un champ de la table)

= Table.AddColumn(Source, "Records", each [

    RTAT = [CA]-[CHARGES],

    APPLICATION COEF CA = [RTAT]*[COEF],

    POSITIF = if [APPLICATION COEF CA]>= 0 then [APPLICATION COEF CA] else 0,

    NEGATIF = if [APPLICATION COEF CA]<= 0 then [APPLICATION COEF CA] else 0])

devient

= Table.AddColumn(Source, "Records", each [

    RTAT = [CA]-[CHARGES],

    #"APPLICATION COEF CA" = RTAT*[COEF],

    POSITIF = if #"APPLICATION COEF CA">= 0 then #"APPLICATION COEF CA" else 0,

    NEGATIF = if #"APPLICATION COEF CA"<= 0 then #"APPLICATION COEF CA" else 0])

A+

Edit : Je vois qu'il y a plus matinal que moi.

Bonjour à vous deux,

Je suis confus d'avoir posé une question apportant une réponse somme toute assez simple, que je connaissais dans le cas où l'on fait référence à un champ avec une valeur spécifique comme ceci : [#"X -1"]

J'ai tourné un bon moment avant de poster !!, et j'ai bien fait car j'aurai pu chercher encore longtemps lol

Merci pour votre solution,

Cordialement,

Rechercher des sujets similaires à "power query ajout colonnes calculees cascade via addrecords"