Bonjour Chris,
J'ai voulu tester une fonction récupérée sur un forum (étranger).
Ceci dit, j'avais ta solution, puisque tu l'as proposée il y a peu…
Pour les curieux :
(tbl) =>
let
Headers = Table.ColumnNames(tbl),
fnMyAccumulator =
(tbl as table, columnName as text) as table =>
if List.MatchesAll(Table.Column(tbl, columnName), each _ is null) then Table.RemoveColumns(tbl, {columnName}) else tbl,
myAccumulatedResult = List.Accumulate(
Headers,
tbl,
(tbl, columnName) => fnMyAccumulator(tbl, columnName))
in
myAccumulatedResult
On dirait presque du VBA !...