Table.TransformColumns на основе частичного заголовка - PullRequest
0 голосов
/ 06 февраля 2019

У меня есть таблица, в которой у каждого клиента есть столбец DATA и столбец RETURN, а значения в каждом нужно разделить на значение.Поскольку я не знаю, сколько клиентов будет в исходной рабочей книге, когда я получаю ее каждый месяц, единственная постоянная величина, которую я имею, - это заголовки DATA (m) и RETURN.

Я пытаюсь разделить каждый столбец, где находится его заголовокимеет "ДАННЫЕ (м)" в заголовке.Поскольку исходные заголовки были именами клиентов, я переставил таблицу, поменял местами столбцы и переставил данные, чтобы переключиться вокруг двух строк.Затем я добавил «DATA (m)» и «RETURN» в заголовки, так как их 1 на клиента;добавляет суффикс, чтобы избежать дублирования заголовков.Мне просто нужен способ заполнить столбцы преобразования на основе префикса каждого заголовка.

#"DATADivide" = Table.TransformColumns (#"Transposed Table1", {{"DATA (m)", each _ / 1000, type number}})

Мне бы хотелось, чтобы значения в столбце «ДАННЫЕ (м)» были разделены на 1000 (и тот же кодможет быть продублирован для работы с Return) для каждого экземпляра, где эта фраза появляется в заголовке.

Большое спасибо заранее

1 Ответ

0 голосов
/ 06 февраля 2019

Делит все столбцы с именами столбцов, содержащих «Данные (» на 1000

let Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
ColumnList = List.Select(Table.ColumnNames(Source), each Text.Contains(_, "Data (")),,
Divide= Table.TransformColumns(Source, List.Transform(ColumnList, each {_, (inner) => inner / 1000, type number}))
in Divide
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...