Bonjour
Faisable en une seule requête (tableau nommé Donnees)
let
Source = Excel.CurrentWorkbook(){[Name="Donnees"]}[Content],
#"Type modifié" = Table.TransformColumnTypes(Source,{{"hébergement", type text}, {"pole", type text}, {"Valo", Int64.Type}, {"mois", Int64.Type}}),
Etat1 = Table.Group(#"Type modifié", {"hébergement", "pole"}, {{"Total", each List.Sum([Valo]), type nullable number}}),
#"Lignes groupées" = Table.Group(Etat1, {"hébergement"}, {{"Tot", each List.Sum([Total]), type nullable number}}),
#"Requêtes fusionnées" = Table.NestedJoin(Etat1, {"hébergement"}, #"Lignes groupées", {"hébergement"}, "Lignes groupées", JoinKind.Inner),
#"Lignes groupées développé" = Table.ExpandTableColumn(#"Requêtes fusionnées", "Lignes groupées", {"Tot"}, {"Tot"}),
#"Personnalisée ajoutée" = Table.AddColumn(#"Lignes groupées développé", "%", each [Total]/[Tot], Percentage.Type),
#"Lignes triées" = Table.Sort(#"Personnalisée ajoutée",{{"hébergement", Order.Ascending}, {"pole", Order.Ascending}}),
#"Colonnes supprimées" = Table.RemoveColumns(#"Lignes triées",{"Tot"})
in
#"Colonnes supprimées"