Есть много файлов с одинаковой структурой данных по столбцам, но с разным числом строк, например любые счета и есть пустой файл с кнопкой и макросом. Нужен макрос для этой кнопки, который вставлял бы данные из этих файлов вниз предыдущих (пример во вложении). Например чтобы копировал все заполненные строки или можно задать N число строк для копирования, начиная с первой...если необходимо, можно задать в макросе и число столбцов для копирования, тем самым определив диапазоны, которые будут копироваться.... Заранее спасибо за Ваши ответы. Жизненная ситуация - мне нужно формулами быстро обработать 300 счет-фактур, для это мне нужно в 1 файл скопировать данные из них и применить нужные формулы...
Добрый день еще раз! Решение на PQ. Создайте у себя на компьютере папку, туда поместите все файлы, которые необходимо объединить
Код
let
Источник = Folder.Files("C:\Users\...."),
#"Отфильтрованные скрытые файлы1" = Table.SelectRows(Источник, each [Attributes]?[Hidden]? <> true),
#"Вызвать настраиваемую функцию1" = Table.AddColumn(#"Отфильтрованные скрытые файлы1", "Преобразовать файл из 1", each #"Преобразовать файл из 1"([Content])),
#"Переименованные столбцы1" = Table.RenameColumns(#"Вызвать настраиваемую функцию1", {"Name", "Source.Name"}),
#"Другие удаленные столбцы1" = Table.SelectColumns(#"Переименованные столбцы1", {"Source.Name", "Преобразовать файл из 1"}),
#"Столбец расширенной таблицы1" = Table.ExpandTableColumn(#"Другие удаленные столбцы1", "Преобразовать файл из 1", Table.ColumnNames(#"Преобразовать файл из 1"(#"Пример файла"))),
#"Измененный тип" = Table.TransformColumnTypes(#"Столбец расширенной таблицы1",{{"Source.Name", type text}, {"Column1", type text}, {"Column2", type text}, {"Column3", type text}, {"Column4", type text}, {"Column5", type text}, {"Column6", type text}, {"Column7", type text}, {"Column8", type text}, {"Column9", type text}, {"Column10", type text}})
in
#"Измененный тип"
В 1 строке кода пропишите путь до папки. Подозреваю, что если вы обрабатываете счет-фактуры, то в какой-то колонке тип данных должен быть number.
Я не вникал в конкретно обсуждаемую модель данных, но думаю решение вам подойдет. Если нет, воспользуйтесь поиском по сайту, подобные задачи решались десятки раз в т.ч. и макросами.