Bonsoir à tous !
Une autre approche (légèrement plus courte) :
let
Source = Csv.Document(
File.Contents(Excel.CurrentWorkbook(){[Name = "Chemin"]}[Content]{0}[Fichier]),
[Delimiter = ",", Columns = 12, Encoding = 1252, QuoteStyle = QuoteStyle.None]
),
Filtre = Table.SelectRows(
Source,
each Text.StartsWith([Column1], "id:") or Text.StartsWith([Column1], "name:")
),
ColSuppAutres = Table.SelectColumns(Filtre, {"Column1"}),
Fractt = Table.SplitColumn(
ColSuppAutres,
"Column1",
Splitter.SplitTextByEachDelimiter({":"}, QuoteStyle.Csv, false),
{"Column1", "Column2"}
),
Index = Table.AddIndexColumn(Fractt, "Index", 0, 1, Int64.Type),
IndexEntier = Table.TransformColumns(
Index,
{{"Index", each Number.IntegerDivide(_, 2), Int64.Type}}
),
Pivot = Table.Pivot(IndexEntier, List.Distinct(IndexEntier[Column1]), "Column1", "Column2"),
SuppIndex = Table.RemoveColumns(Pivot, {"Index"})
in
SuppIndex