Power query transformer

Bonjour,

14t40.xlsx (15.98 Ko)

En power query svp:

Ci-joint un fichier excel “T40” contenant 2 tableaux.

Le tableau en bleu est la source, le tableau en orange est le résultat souhaité en favori s'il vous plaît.

Merci de votre aide.

Bonjour

Pourquoi 611 devient 601 ?

J'ai laissé les numéros initiaux

11mouvements-pq.xlsx (18.92 Ko)

Bonjour et merci 78Chirs,

Ci-joint un developpement que je viens de finir; vous en pensez quoi svp?

Merci.

8t40bis.xlsx (19.98 Ko)

RE

Cela marche aussi et tu peux gagner 2 étapes

let
    Source = Excel.CurrentWorkbook(){[Name="Tableau1"]}[Content],
    #"Index ajouté" = Table.AddIndexColumn(Source, "Index", 1, 1, Int64.Type),
    #"Requête ajoutée" = Table.Combine({#"Index ajouté", #"Index ajouté"}),
    #"Lignes triées" = Table.Sort(#"Requête ajoutée",{{"Index", Order.Ascending}}),
    #"Index ajouté1" = Table.AddIndexColumn(#"Lignes triées", "Index.1", 1, 1, Int64.Type),
    #"Élément sélectionné est pair" = Table.TransformColumns(#"Index ajouté1",{{"Index.1", Number.IsEven, type logical}}),
    #"Colonne conditionnelle ajoutée" = Table.AddColumn(#"Élément sélectionné est pair", "COMPTE", each if [Index.1] = false then [COMPTE DEBIT] else [COMPTE CREDIT]),
    #"Colonne conditionnelle ajoutée1" = Table.AddColumn(#"Colonne conditionnelle ajoutée", "MONTANT DEBIT", each if [Index.1] = false then [MONTANT] else " "),
    #"Colonne conditionnelle ajoutée2" = Table.AddColumn(#"Colonne conditionnelle ajoutée1", "MONTANT CREDIT", each if [Index.1] = true then [MONTANT] else " "),
    #"Autres colonnes supprimées" = Table.SelectColumns(#"Colonne conditionnelle ajoutée2",{"COMPTE", "MONTANT DEBIT", "MONTANT CREDIT"})
in
    #"Autres colonnes supprimées"

Bonjour,

Dans la feuille "PQ - inconnu", ceci fonctionne également :

let
    Source = Excel.CurrentWorkbook(){[Name="Tableau1"]}[Content],
    #"Tableau croisé dynamique des colonnes supprimé" = Table.UnpivotOtherColumns(Source, {"MONTANT"}, "Attribut", "COMPTE"),
    #"Index ajouté" = Table.AddIndexColumn(#"Tableau croisé dynamique des colonnes supprimé", "Index", 0, 1, Int64.Type),
    #"Colonne dynamique" = Table.Pivot(#"Index ajouté", List.Distinct(#"Index ajouté"[Attribut]), "Attribut", "MONTANT"),
    #"Lignes triées" = Table.Sort(#"Colonne dynamique",{{"Index", Order.Ascending}}),
    #"Autres colonnes supprimées" = Table.SelectColumns(#"Lignes triées",{"COMPTE", "COMPTE DEBIT", "COMPTE CREDIT"})
in
    #"Autres colonnes supprimées"

Cordialement

Bonjour ,

Je vous remercie pour votre aide !!!!!

Bonjour à tous !

Une tardive contribution ?

let
    Source = Excel.CurrentWorkbook(){[Name="Tableau1"]}[Content],
    Montants = 
        let
            a=Table.UnpivotOtherColumns(Source, {"MONTANT"}, "Attribut", "Compte"),
            b=Table.AddColumn(a, "Montant débit", each if [Attribut]="COMPTE DEBIT" then [MONTANT] else null),
            c=Table.AddColumn(b, "Montant crédit", each if [Attribut]="COMPTE CREDIT" then [MONTANT] else null)
        in 
           Table.SelectColumns(c,{"Compte", "Montant débit", "Montant crédit"})
in
    Montants

Bonjour JFL,

Je re remercie; en copiant coller, je n'arrive pas a vor les étapes!!!!

Bonjour à tous de nouveau !

Je re remercie; en copiant coller, je n'arrive pas a vor les étapes!!!!

Il faut en passer par l'éditeur avancé !
C'est ma marotte du moment...

Sinon, la même approche "accessible" :

let
    Source = Excel.CurrentWorkbook(){[Name="Tableau1"]}[Content],
    Unpivot = Table.UnpivotOtherColumns(Source, {"MONTANT"}, "Attribut", "Compte"),
    Mt_Débit = Table.AddColumn(Unpivot, "Montant débit", each if [Attribut]="COMPTE DEBIT" then [MONTANT] else null),
    Mt_Crédit = Table.AddColumn(Mt_Débit, "Montant crédit", each if [Attribut]="COMPTE CREDIT" then [MONTANT] else null),
    ColSuppAutres = Table.SelectColumns(Mt_Crédit,{"Compte", "Montant débit", "Montant crédit"})
in
    ColSuppAutres

Bonjour JFL,

Merci !!!!

Rechercher des sujets similaires à "power query transformer"