В этой статье мы узнаем, как собрать данные из разных книг с помощью VBA в Microsoft Excel.

Давайте разберемся с помощью простого упражнения, как объединить электронную таблицу через VBA в Microsoft Excel.

У нас есть 3 разных файла Excel. 2 файла — xlsx и один файл — xlsm в папке. Мы хотим сопоставить оба набора данных в файле Excel, чтобы иметь в виду несколько вещей, которые в каждых данных могут увеличиваться и уменьшаться строки и столбцы, а также мы не знаем имена файлов Excel и сколько файлов находится в папке. .

На этом листе мы хотим объединить данные: —

image 1

1 ^ st ^ Данные: —

image 2

2 ^ nd ^ Данные: —

image 3

3 ^ rd ^ Данные: —

image 4

Теперь мы хотим сопоставить данные на листе. Нам нужно выполнить следующие шаги и код: — * Нажмите клавишу Alt + F11, чтобы открыть страницу VBE для записи макроса.

  • Затем перейдите на вкладку вставки и вставьте модуль.

  • Напишите ниже указанный код на странице.

Sub Collate_Data ()

Dim FolderpathAs String, filePath As String, Filename As String Folderpath = «E: \ Excel Tips \ New VBA themes \ HR Data \» ‘(укажите путь к файлу)

filePath = Путь к папке & «xls»

Имя файла = Dir (filePath)

Dim LastrowAs Long, Lastcolumn as long Do while Filename <> «»

Workbooks.Open (путь к папке и имя файла)

Lastrow = ActiveSheet.Cells (Rows.count, 1) .End (xlUp) .Row Lastcolumn = ActiveSheet.Cells (1, Columns.count) .End (xlToLeft) .Column Range (Cells (2, 1), Cells (Lastrow) , Lastcolumn)). Копировать Application.DisplayAlerts = False ActiveWorkbook.Close erow = Sheet1.Cells (Rows.count, 1) .End (xlUp) .Offset (1, 0) .Row ActiveSheet.Paste Destination: = Worksheets («Sheet1 «) .Range (Cells (erow, 1), Cells (erow, 5))

Filename = Dir Loop Application.DisplayAlerts = True End Объяснение субкода: — Во-первых, мы определим все переменные, которые нам нужно использовать при описании кода. Затем мы будем использовать цикл Do While в коде, чтобы запустить программу для всех файлов Excel. Затем мы определим путь к файлам, и после этого мы определим последнюю строку и столбец в листе Excel, а затем мы определим место назначения для вставки данных.

image 5

  • Для запуска макроса нажмите клавишу F5.

  • Данные обоих листов будут скопированы и вставлены в лист Excel.

image 6

Таким образом мы можем сопоставить данные на листе из разных файлов Excel через VBA в Microsoft Excel.