let
Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
#"Added Index" = Table.AddIndexColumn(Table.FromList(Table.ToColumns(Source), Splitter.SplitByNothing()), "Index", 1, 1, Int64.Type),
#"Added Custom" = Table.AddColumn(#"Added Index", "Column N°", each List.Repeat({"Col " & Text.From([Index])},List.Count(_[Column1]))),
Combined = Table.TransformColumnTypes(Table.FromColumns({List.Combine(Table.SelectRows(#"Added Custom",each Number.IsOdd(_[Index]))[Column1]),List.Combine(Table.SelectRows(#"Added Custom",
each Number.IsEven(_[Index]))[Column1]), List.Combine(Table.SelectRows(#"Added Custom",each Number.IsOdd(_[Index]))[#"Column N°"])},{"Horaire","Value","Column N°"}),{{"Horaire", type time}}),
#"Expanded Group" = Table.SelectRows(Table.Group(Table.SelectColumns(Table.SelectRows(Table.ExpandTableColumn(Table.ExpandTableColumn(Table.Group(Combined, {"Horaire"}, {{"Value",
each Table.Group(_,{"Column N°"},{{"Group", each Table.AddIndexColumn(_,"Index",1)}})}}), "Value", {"Column N°", "Group"}, {"Column N°", "Group"}), "Group", {"Value", "Index"}, {"Value", "Index"}),
each [Index] = 1), {"Horaire", "Value"}), {"Horaire"}, {{"Value", each if List.Count(_[Horaire]) = 8 then List.Sum(_[Value]) else null}}), each [Value] <> null),
#"Sorted Rows" = Table.Sort(#"Expanded Group",{{"Horaire", Order.Ascending}})
in
#"Sorted Rows"