Копирование / вставка динамического диапазона из нескольких рабочих книг в одну основную рабочую книгу.... цикл

Мне было поручено создать мастер-файл, содержащий 6 отдельных рабочих книг в одной основной рабочей книге, чтобы мы могли одновременно запускать сводные таблицы из консолидированных рабочих книг. Все эти файлы содержат одинаковые отформатированные таблицы планов ресурсов для каждой команды в нашей организации, расположенной на листе 4.

Все 6 моих файлов имеют одинаковые данные на одном листе каждой рабочей книги. Все они имеют одинаковые столбцы в своей таблице (A:BO), но имеют динамический диапазон, то есть диапазон не будет одинаковым при каждом обновлении файлов. Кроме того, данные начинаются в отдельных книгах в ячейке A4.... Заголовки занимают первые три строки.

Я пытаюсь запустить код, который автоматически просматривает 6 файлов на моем рабочем столе и копирует все ячейки со значением из A: BO на Sheet 4, а затем вставляет их в мастер-файл, объединяя все файлы в один, поверх друг друга. Моя цель по вставке состоит в том, чтобы иметь возможность вставлять как значения и вставлять следующие рабочие книги одну за другой, каждая из которых начинается с первой пустой строки после того, как были вставлены данные, таким образом объединяя все 6 планов ресурсов в одну большую таблицу всех команд.,

Итак, я написал: -Код для извлечения отдельных файлов из Sharepoint и загрузки в файл на рабочем столе -Код для копирования и вставки данных из первой отдельной рабочей книги и вставки в Masterfile в качестве значений

Мне нужна помощь в выяснении того, как я могу затем закрыть первую книгу, куда я скопировал, открыть свой следующий файл, чтобы добавить его в MasterFile, и вставить в качестве значений ниже следующей пустой строки между A:BO, а затем выполнить цикл до объединения всех 6 файлов.,

** Также обратите внимание:

Мои отдельные файлы, поступающие в Masterfile, защищены паролем. (Если есть способ обойти это было бы здорово)

Некоторые из отдельных файлов xlsm, а некоторые xlsb (не все макросы включены)

Также было бы очень полезно, если бы после вставки данных я мог бы назначить новый столбец, в котором будет указано, откуда этот диапазон информации (например, если я вставил данные из книги администратора, назначьте столбец, в котором ADMIN записан в каждой строке). данных, откуда он был извлечен.

** КОД ТАК FAR

Sub Consolidate

'Open Master File
Workbooks.Open Filename:="C:\...\Masterfile.xlsm"
Workbooks("Masterfile").Worksheets("2019").Range("A4").End(xlDown).End(xlToRight).Select
Selection.Clear

'Admin
Workbooks.Open Filename:="C:\\...\Admin.xlsm"
Workbooks("Admin.xlsm").Worksheets("Resource Plan").UsedRange.Offset(4,0).Copy

Workbooks("Masterfile").Activate
ActiveWorkbook.Sheets("2019").Range("A4").PasteSpecial Paste:=xlPasteValues

Workbooks("Admin").Close

End sub

Я очень новичок в VBA и изо всех сил стараюсь быстро освоить все это, поэтому любая помощь будет принята с благодарностью! У меня нет доступа к моему коду удаленно, но это основа того, что я помню.... Я хочу иметь возможность циклически просматривать папку на рабочем столе и постоянно выбирать диапазон ячеек со значением в столбцах A:BO, а затем вставьте значения в моем Masterfile между столбцами A: BO один за другим... СПАСИБО!

0 ответов

Другие вопросы по тегам