Страницы: 1
RSS
Собрать файлы из папки Power Query, Проблема в том что часть файлов имеют одно количество столбцов, другая часть на 3 столбца больше
 
Коллеги, добрый день!
У меня имеются 2 типа файлов, мне их надо собрать в одну таблицу. С VBA в принципе могу реализовать, но начал пользоваться Power Query и хочется реализовать с его помощью.
Есть 2 типа файлов в одном 15 столбцов, в другом 18. Хотелось бы взять за основу тот файл где столбцов больше, и к заголовкам притянуть данные. В случае если такого столбца нет в файле, то ячейки будут пустые. В PQ это реализуемо?
 
Собрать данные с таблиц с изменяющимися столбцами в PowerQuery
 
Finswimmer, так сделать одинаковые шапки таблиц добавлением дополнительных столбцов и объединить Table.Combine({#"Табл1", #"Табл2"})
 
vlad000, по ссылке в комментах и такой вариант есть. Только зачем добавлять столбцы? Table.Combine и сам все соберет как надо без добавления.
Вот горшок пустой, он предмет простой...
 
Видимо для меня PQ еще слишком темный лес...
 
Finswimmer, вы о чем? Для вашей задачи кнопочного решения не существует - это факт. а что не понятно в статье по ссылке? Там же все разжевано вроде. И здесь можете по копаться в моих постах, я уже минимум в трех темах за прошедшие 2-3 месяца предлагал.
Изменено: PooHkrd - 01.04.2019 18:29:35
Вот горшок пустой, он предмет простой...
 
PooHkrd,кнопочного решения не существует - это для меня пока еще проблема)
 
Offtop
Цитата
Finswimmer написал:
это для меня пока еще проблема)
если начинать учиться, то будет пожизненно, а начали вы 22 октября 2017
 
Сделал от обратного. Взял самый длинный файл. С ним сделал нужные манипуляции, и на его основе подтянул остальные. Там где нет нужных столбцов PQ оставляет пустыми ячейки
 
Андрей VG,как правило в голове откладывается то что используется постоянно. Один раз использовал, а потом год не используешь - все равно что заново учить.
Касательно той темы, что Вы дали ссылку. Для решения поставленных передо мной задач углубленного изучения PQ не потребовалось, о чем жалею.  
 
Разобрался с TabelCombine, но есть вопрос. Как добавить столбец с названием таблицы?  
 
Вот в этом посте пример кода. Смотрите вторую формулу. Этот код подходит к примеру от ТС в той теме.
Изменено: PooHkrd - 01.04.2019 20:31:47
Вот горшок пустой, он предмет простой...
 
Сейчас код имеет такой вид (это уже готовые запросы, я их объединяю в один). Результат меня удовлетворяет, нужно только добавить Столбец с источником, чтобы понимать что откуда
Код
let
    Источник = Table.Combine({Тинькоф, Совесть, Халва})
in
    Источник
Понимаю что мне не хватает азов. Как в каждой строке поставить имя источника? Чтобы строкам из запроса "Тинькоф" - было написано Тинькоф? Что написать вместо вопросов?
Код
Эмитент = Table.AddColumn(Источник, "Эмитент", ???)
Изменено: Finswimmer - 01.04.2019 20:59:24
 
Ну, вы, блин, даете!  :D
Начиналось все с файлов в папке, оттуда я и плясал. А если так, то можно выковырнуть имена запросов через = #shared и при помощи моего кода напихать их в ваши запросы. В общем - было бы желание.
Вот горшок пустой, он предмет простой...
 
PooHkrd,Я думал что принцип один. Прошу прощения что ввел в заблуждение
 
Принцип в том что при сборе из папки есть таблица с готовыми именами источников, в ячейках которой есть содержимое файлов, которое и объединяется. Названия источников при этом остаются, если вы разворачивание столбцы, либо их можно воткнуть в таблицы перед использованием Table.Combine. Вы же обратились к каждому файлу отдельным запросом и их уже объединяете, т.е. внешний контекст теряется. Выхода 2 либо #shared, либо раз уж вы обращаетесь к файлам в отдельных запросах то сразу в этом запросе и создавайте столбец с его названием. При объединении будет понятно что откуда.
Вот горшок пустой, он предмет простой...
 
PooHkrd, Столбец [Name] в каждом запросе есть, но он передает названия файлов, которые не отражают сути. Мне нужно имя запроса.
Можете дать ссылку чтобы прочитать про #shared?
 
Поищите по форуму тут Максим Зеленский давал волшебную ссылку на концепт вычислительной модели языка М.
Вот горшок пустой, он предмет простой...
Страницы: 1
Наверх