let
Source = Excel.CurrentWorkbook(){[Name="BdD"]}[Content],
fx = (x)=> Text.Proper(Date.MonthName(x)) & " " & Text.From(Date.Year(x)),
ColName = List.Generate( () => List.Min(Source[fin]), each Date.EndOfMonth(_) < Date.AddMonths(List.Max(Source[fin]),1), each Date.AddMonths(_, 1), each fx(_)),
#"Grouped Rows" = Table.Group(Table.TransformColumns(Table.SelectColumns(Source, {"Nom", "fin"}), {"fin", each fx(_)}), "fin", {"Nom", (x) => List.Sort(x[Nom])}),
#"Added Custom" = Table.AddColumn(Table.FromColumns({ColName}), "Custom", (x)=> try Table.SelectRows(#"Grouped Rows", each [fin] = x[Column1])[Nom]{0} otherwise {}),
Result = Table.FromRows(List.Zip(#"Added Custom"[Custom]), ColName)
in
Result