Страницы: 1
RSS
Power Query. Передать шапку базовой таблицы таблице-результат
 
Добрый день.
В прилагаемом файле запрос работает по принципу СУММЕСЛИМН.
Как его изменить, чтобы шапка базовой таблицы перешла в шапку таблицы-результата.
Шапка базовой таблицы может меняться.
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    Шаг1 = Table.Pivot(Источник, List.Distinct(Источник[слово]), "слово", "число", List.Sum),
    Шаг2 = Table.Transpose(Table.DemoteHeaders(Шаг1))
in
    Шаг2
 
Бахтиёр, справку по Table.Transpose смотрели?
Код
= Table.Transpose(Table.DemoteHeaders(Шаг1), Table.ColumnNames(Источник))
 
del
Изменено: buchlotnik - 23.08.2021 15:28:02
Соблюдение правил форума не освобождает от модераторского произвола
 
Цитата
Бахтиёр:  Шапка базовой таблицы может меняться.
Антон, спасибо, но если поменять шапку базовой таблицы, ваш запрос выдаёт ошибку

buchlotnik, шикарно.
Цитата
 to = Table.Group(from, lst{0}, {lst{1}, each List.Sum(Record.Field(_,lst{1}))})
буду изучать справку.
Изменено: Бахтиёр - 21.01.2021 16:40:43
 
del
Изменено: buchlotnik - 23.08.2021 15:28:15
Соблюдение правил форума не освобождает от модераторского произвола
 
buchlotnik, спасибо.

также загружаю вариант, который я разжевал для себя.
Код
let
    Введите_название_умной_таблицы_которая_на_листе = "Таблица1",
    Введите_номер_ключевого_столбца = 2,
    Введите_номер_суммируемого_столбца = 4,
    
    кл = Введите_номер_ключевого_столбца - 1,
    су = Введите_номер_суммируемого_столбца - 1,
    
    таблица = Excel.CurrentWorkbook(){[Name=Введите_название_умной_таблицы_которая_на_листе]}[Content],
    шапка = Table.ColumnNames(таблица),
    Результат = Table.Group(таблица, шапка{кл}, {шапка{су}, each List.Sum(Record.Field(_,шапка{су}))})
in
    Результат
Изменено: Бахтиёр - 21.01.2021 20:02:57
 
Цитата
Бахтиёр написал:
если поменять шапку базовой таблицы, ваш запрос выдаёт ошибку
посмотрите код ниже
делал именно по вашему варианту
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    Шаг1 = Table.Pivot(Источник, List.Distinct(Expression.Evaluate("Источник["& Table.ColumnNames(Источник){0} & "]", [Источник=Источник])), Table.ColumnNames(Источник){0}, Table.ColumnNames(Источник){1}, List.Sum),
    Шаг2 = Table.Transpose(Table.DemoteHeaders(Шаг1), Table.ColumnNames(Источник))
in
    Шаг2

сделано конечно через одно место, но работает)
вы же изначально не написали, что можно использовать другие функции
 
Антон, спасибо
Страницы: 1
Наверх