Страницы: 1
RSS
Авторасширение (добавление новых строк, после появления новых данных) в таблицы в excel (PowerQuery)
 
Добрый день уважаемые коллеги.

Помогите пожалуйста. Я думаю это можно сделать через объединение таблиц в query, подскажите пожалуйста как? Надо объединить данные и классификатор.
Создаю таблицу с правильной структурой, что бы дальше было легче работать с данными.
Проблема в том, что исходные данные (в данном случае животные и их показатели) могут со временим добавляется или исчезать.
Соответственно проблема в том, что бы итоговая таблица учитывала данные изменения.
Пример во вложении, к примеру в случае если к текущим животным добавиться "Лебеди", тогда таблица должна добавить лебедей на листе "Лебеди" и все месяца должны учитывать данное изменение.
Изменено: bobyjoy - 10.01.2019 16:57:11
 
Я вот ничего не понял, что с чем объединять, вы свой пример видели? Там нет листа Лебеди, а на листе классификатор вообще какие-то месяцы.
 
bobyjoy,

Не могу взять в толк, почему Лебеди не Птички и зачем Вам всё это, но вот:  :)

Код
let
    Source = Excel.CurrentWorkbook(){[Name="Классификатор"]}[Content],
    #"Added Custom" = Table.AddColumn(Source, "Данные", each Excel.CurrentWorkbook(){[Name="Данные"]}[Content]),
    #"Expanded {0}" = Table.ExpandTableColumn(#"Added Custom", "Данные", {"Животное", "Кол-во"}, {"Животное", "Кол-во"}),
    #"Reordered Columns" = Table.ReorderColumns(#"Expanded {0}",{"Номер", "Животное", "Кол-во", "Месяц"})
in
    #"Reordered Columns"
Изменено: Aleksei_Zhigulin - 10.01.2019 17:19:11
 
Цитата
Alexey_Spb написал: Я вот ничего не понял,
Прошу прощения, лебеди это новая сущность в первой таблице, просто новое животное.

Aleksei_Zhigulin
Спасибо большое, по мойму то что надо.
Подскажите пожалуйста, вы объединяли запросы? Если добавлять пользовательский столбец, он же сразу не видит другую таблицу.
 
bobyjoy,

Объединения как такового (в терминах PQ, по крайней мере) не было. Всё что я сделал - в таблице Классификатор добавил столбец, в каждой ячейке которого разместил таблицу Данные, а затем развернул данный столбец. В результате получились все возможные сочетания строк из обеих таблиц.
 
Цитата
Aleksei_Zhigulin написал:
столбец, в каждой ячейке
Скажите пожалуйста как называется кнопка, где она, у меня русифицированные PQ и он не понимает команды на английском.
 
Цитата
bobyjoy написал:
у меня русифицированные PQ и он не понимает команды на английском.
8-0  :cry: Он только притворяется, что не понимает. Не хочет работать - lazy evaluation. :D

У меня тоже русифицированный PQ, не поверите. :)  На понимание команд на английском это не влияет. Кнопка называется Настраиваемый столбец:
 
У меня получилось, но в своем файле только после того, как я передвинул лист с нужной таблицей на первое место в файле, сейчас мне необходимо добавить к таблице еще одну таблицу из другого листа, подскажите пожалуйста в таком случае используется та же формула?
То есть нужно добавлять содержимое отдельных листов
Изменено: bobyjoy - 10.01.2019 18:36:42
 
bobyjoy,

Понимать Вас становится всё сложнее, хотя уже первым постом была задана довольно высокая планка.  :)

Насколько я понял, Вы пытаетесь применить предложенное мной решение в каком-то другом своём файле. Допустим, но дальше начинаются загадки. Если Вы используете код из моего решения, то совершенно не важно, в каком порядке у Вас листы в книге - запрос обращается к двум таблицам (Классификатор и Данные), Вы можете расположить их где Вашей душе угодно - в любых ячейках любого листа. Здесь, наверное, следует уточнить, что под таблицами я понимаю именно таблицы, а не диапазон данных. Подозреваю, что Ваша проблема именно в этом. Соответственно, сначала превратите интересующие Вас диапазоны данных в таблицы Excel и уже затем обращайтесь к ним в запросе.
Изменено: Aleksei_Zhigulin - 10.01.2019 19:48:25
 
Да, спасибо большое, я понял наконец в чем проблема была.
1_ Превратить все в умные таблицы (в моем случае, сделал квери запросы на все необходимые таблицы)
2) Корректно указать название этих таблиц. Я сначала переименовывал запросы квери и оказалось, что сами таблицы таким образом не переименовываются и название для каждой таблицы необходимо было брать к примеру из кода в квери.
Завтра прикреплю скриншоты, так как файл на работе.

Спасибо большое за вашу формулу, научился ею пользоваться.
 
bobyjoy,

Рад, что всё прояснилось. :)  
 
Цитата
bobyjoy написал:
Надо объединить данные и классификатор. Создаю таблицу с правильной структурой, что бы дальше было легче работать с данными.
Уже на этом этапе возникли сомнения, что вы идете по правильному пути.
Если цель - получить одну большую плоскую таблицу, то ок. Но может, она и не нужна - а нужно построить модель данных со справочниками и т.п.?
F1 творит чудеса
Страницы: 1
Наверх