Sub Кнопка2_Щелчок()
Range("A11").Select (до A11 шапка )
перед вставкой удаляем все имеющиеся данные, соответственно до шапки
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select - выделяем
Selection.Delete Shift:=xlUp - удаляем
Range("A11").Select встаем на начало заполнения таблицы
Workbooks.Open("D:\1\2.xlsx").Activate - открываем интересующий нас файл
Range("A11").Select встаем так же на начало таблицы
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select выделяем ее
Selection.Copy копируем
Windows("Копия.xlsm").Activate переходим в общую базу
ActiveSheet.Paste вставляем, активная ячейка на этом этапе А11
lr = Cells(Rows.Count, 2).End(xlUp).Row находим во втором столбце последнюю запись и присваиваем переменной lr значение записи ( это сделано для того. чтобы исключить переход по пустым ячейкам которые копируются с форматированием но без данных (косяки юзеров)
Cells(lr + 1, 1).Select и переходим на ячейку ниже но уже в первом столбце
Selection.Copy освобождаем буфер
Workbooks("2.xlsx").Close закрываем первый файл с которого было копирование данных
Workbooks.Open("D:\1\3.xlsx").Activate открываем второй файл
Range("A11").Select встаем на начало таблицы
Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select выделяем ее аналогично первому
Selection.Copy копируем
Windows("Копия.xlsm").Activate переходим на главную таблицу
ActiveSheet.Paste вставляем
аналогично как и с первым файлом проводим операции
lr = Cells(Rows.Count, 2).End(xlUp).Row
Cells(lr + 1, 1).Select
Selection.Copy
Workbooks("3.xlsx").Close
т.к. копирование идет из разных таблиц, то порядковый номер будет заполнен неверно
Range("A11").Select переходим на начало общей таблицы
Dim i As Long база большая/ поэтому long
в цикле заполняем порядковые номера базы
For i = 1 To lr - 10
ActiveCell.FormulaR1C1 = i
Cells(11 + i, 1).Select
Next i
End Sub