let
Source = Excel.CurrentWorkbook(){[Name="Tableau1"]}[Content],
Jointure = Table.NestedJoin(Source, {"COMPTE"}, Source, {"COMPTE"}, "Source", JoinKind.LeftOuter),
Expand = Table.ExpandTableColumn(Jointure, "Source", {"MOIS", "COMPTE", "MONTANT"}, {"MOIS.1", "COMPTE.1", "MONTANT.1"}),
Filtre = Table.SelectRows(Expand, each [MOIS.1] <= [MOIS]),
GroupBy = Table.Group(Filtre, {"COMPTE", "MOIS"}, {{"Montant", each List.Sum([MONTANT.1]), type number}})
in
GroupBy
Bonjour à tous !
Une autre approche Power Query (à adapter....)
VB:let Source = Excel.CurrentWorkbook(){[Name="Tableau1"]}[Content], Jointure = Table.NestedJoin(Source, {"COMPTE"}, Source, {"COMPTE"}, "Source", JoinKind.LeftOuter), Expand = Table.ExpandTableColumn(Jointure, "Source", {"MOIS", "COMPTE", "MONTANT"}, {"MOIS.1", "COMPTE.1", "MONTANT.1"}), Filtre = Table.SelectRows(Expand, each [MOIS.1] <= [MOIS]), GroupBy = Table.Group(Filtre, {"COMPTE", "MOIS"}, {{"Montant", each List.Sum([MONTANT.1]), type number}}) in GroupBy
Comme ceci ?Hello
Merci à tous des codes !!!
@JFL_Excel
Comment rajouter la notion d'année différente ?
J'avoue que je bloque .... j'ai changé deux année de 2023 en 2022
Merci à vous
bonne soirée
Seb
let
Source = Excel.CurrentWorkbook(){[Name="Tableau1"]}[Content],
Jointure = Table.NestedJoin(Source, {"ANNE", "COMPTE"}, Source, {"ANNE", "COMPTE"}, "Source", JoinKind.LeftOuter),
Expand = Table.ExpandTableColumn(Jointure, "Source", {"MOIS", "COMPTE", "MONTANT"}, {"MOIS.1", "COMPTE.1", "MONTANT.1"}),
Filtre = Table.SelectRows(Expand, each [MOIS.1] <= [MOIS]),
GroupBy = Table.Group(Filtre, {"ANNE", "COMPTE", "MOIS"}, {{"Montant", each List.Sum([MONTANT.1]), type number}}),
Tri = Table.Sort(GroupBy,{{"ANNE", Order.Ascending}, {"COMPTE", Order.Ascending}, {"MOIS", Order.Ascending}})
in
Tri
Comme ceci ?
PowerQuery:let Source = Excel.CurrentWorkbook(){[Name="Tableau1"]}[Content], Jointure = Table.NestedJoin(Source, {"ANNE", "COMPTE"}, Source, {"ANNE", "COMPTE"}, "Source", JoinKind.LeftOuter), Expand = Table.ExpandTableColumn(Jointure, "Source", {"MOIS", "COMPTE", "MONTANT"}, {"MOIS.1", "COMPTE.1", "MONTANT.1"}), Filtre = Table.SelectRows(Expand, each [MOIS.1] <= [MOIS]), GroupBy = Table.Group(Filtre, {"ANNE", "COMPTE", "MOIS"}, {{"Montant", each List.Sum([MONTANT.1]), type number}}), Tri = Table.Sort(GroupBy,{{"ANNE", Order.Ascending}, {"COMPTE", Order.Ascending}, {"MOIS", Order.Ascending}}) in Tri
Cela fera le cumul Compte-Année-mois ?
Si ces doublons ne vous conviennent pas, pourquoi ne pas les éliminer ?Effectivement cela marche nickel pour le classement
Mais dans le fichier original j'ai des doublons.
let
Source = Excel.CurrentWorkbook(){[Name="TAB_COMPTES"]}[Content],
#"Lignes filtrées" = Table.SelectRows(Source, each ([COMPTE] = "AAA") and ([BUDGET REEL] = "REEL")),
Jointure = Table.NestedJoin(#"Lignes filtrées", {"ANNEE", "COMPTE"}, #"Lignes filtrées", {"ANNEE", "COMPTE"}, "Source", JoinKind.LeftOuter),
Expand = Table.ExpandTableColumn(#"Lignes filtrées1", "Source", {"MOIS", "COMPTE", "DEBITCREDIT"}, {"MOIS.1", "COMPTE.1", "DEBITCREDIT.1"}),
#"Type modifié" = Table.TransformColumnTypes(Expand,{{"DATE", type date}}),
Filtre = Table.SelectRows(#"Type modifié", each [MOIS.1] <= [MOIS]),
GroupBy = Table.Group(Filtre, {"COMPTE", "ANNEE", "MOIS"}, {{"DEBITCREDIT", each List.Sum([DEBITCREDIT.1]), type number}}),
Tri = Table.Sort(GroupBy,{{"ANNEE", Order.Ascending}, {"COMPTE", Order.Ascending}, {"MOIS", Order.Ascending}})
in
Tri