У меня есть таблица excel с данными в нескольких столбцах. Я пытаюсь создать другую таблицу, которая будет использоваться для раскрывающегося списка в ячейке только с уникальными значениями. Мне нужно получить уникальные значения независимо между каждым столбцом.
Исходная таблица
geo product type
g1 p1 t1
g1 p2 t1
g1 p3 t2
g1 p4 t1
g2 p1 t2
g2 p2 t1
g2 p3 t2
g2 p4 t1
Ожидаемый результат:
geo product type
g1 p1 t1
g2 p2 t2
null p3 null
null p4 null
Я могу получить уникальные столбцы в виде списков
geo_list = List.Distinct(Table.Column(Source, "geo"))
product_list = List.Distinct(Table.Column(Source, "product"))
type_list = List.Distinct(Table.Column(Source, "type"))
Но не могу найти способ объединить его в одну таблицу без какого-либо соединения.
С Office 365 для этого даже не нужен Power Query, с UNIQUE
это намного проще:
=UNIQUE(Table1[geo])
Но не могу найти способ объединить его в одну таблицу без какого-либо соединения.
Я думаю, что вам не стоит пытаться свести их в одну таблицу, а держать отдельно. Идея таблиц заключается в том, что каждая строка содержит информацию, связанную друг с другом, что, по-видимому, не относится к вашим данным.
Подобно этому посту , вы можете использовать Table.FromColumns, чтобы собрать таблицу из ваших списков.
Table.FromColumns(
{
List.Distinct(Source[geo]),
List.Distinct(Source[product]),
List.Distinct(Source[type])
},
{"geo","product","type"}
)
Спасибо. Это замечательно. Я уже был в середине создания своей собственной гигантской функции.
Есть ли у вас также быстрый выигрыш, чтобы применить его к таблице независимо от количества и имен столбцов?
Это будет то же самое, что и в части редактирования сообщения, на которое я ссылаюсь, за исключением List.Distinct
вместо List.RemoveNulls
и Source
вместо Pivot
.
Это правда, и я знаю об этом, однако, если вы хотите использовать его в списке проверки данных, вы получите ошибку (если вы используете непосредственно уникальные эффекты непосредственно там) или вам нужно создать довольно сложную формулу, чтобы поймать динамически изменяемый диапазон. Если бы у меня было это в таблице Excel, все, что мне нужно было сделать, это поместить туда именованный диапазон и игнорировать пустые значения.