Консолидация данных из множества файлов excel в одну таблицу

программирование excel VBA Макросы

Имеется папка с большим количеством файлов, именованных от 1 до n. Каждый файл содержит таблицу с одинаковой шапкой и разнящимися данными. Необходимо создать сводную таблицу.
Насколько я понимаю, тут остается использовать только макрос, который бы открывал файл, копировал данные без верхней строки и добавлял бы в главную таблицу.
В программировании я несильна, подскажите как указать цикл, чтобы открывался следующий по порядку файл после добавления данных?
Заранее спасибо
Ответы:
если n известно, то
sub collector()
dim src as workbook, recieve as worksheet
set recieve=activesheet: cp=2 'тек. позиция вставки 2
for n=1 to 50 '(вместо 50 поставьте нужное число по кол-ву файлов)
   Workbooks.Open Filename:="D:\"+cstr(n)+".xls": set src=activeworkbook 'открыть файл d:\n.xls, где n бла-бла
   i=2
   while cells(i,1)<>"" do  'поиск последней строки
       i=i+1
   loop
   Rows("2:"+cstr(i)).Select  'выделить строки со 2 по последнюю
   Selection.Copy                 'скопировать в буфер
   recieve.activate                'переключиться в "приемник"
   cells(cp,1).select              'встать в позицию для вставки
   ActiveSheet.Paste            'собственно вставить
   cp=cp+i                            'тек. позиция вставки + кол-во вставленных строк
   src.close false                  'закрыть файл-источник
   doevents                        'отрисовать на экране то что могло не успеть отрисоваться
next             'перейти к следующему N
end sub


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.