Зміст
Щоб об’єднати книги в Excel, скористайтеся наступним кодом. Цей код займе всі перші аркуші в кожній книзі, знайденій у каталозі:
123456789101112131415161718192021222324252627282930313233343536 | 'Злиття робочих книгДодаткові злиттяApplication.EnableEvents = НеправдаApplication.ScreenUpdating = НеправдаDim path as String, ThisWB As String, lngFilecounter As LongЗатемнити wbDest як робочу книгу, shtDest як робочий аркуш, ws як робочий аркушDim Filename As String, Wkb As WorkbookDim CopyRng As Range, Dest As RangeЗатемнити RowofCopySheet як ціле числоRowofCopySheet = 2 'Рядок для початку на аркушах, з яких ви копіюєтеThisWB = ActiveWorkbook.Namepath = GetDirectory ("Виберіть папку, що містить файли Excel, які потрібно об’єднати")Встановити shtDest = ActiveWorkbook. Таблиці (1)Ім'я файлу = Dir (шлях & "\*. Xlsm", vbNormal)Якщо Len (Ім'я файлу) = 0, то вийдіть із SubРобіть, поки ім'я файлу = vbNullStringIf Not Filename = ThisWB ТодіВстановіть Wkb = Робочі книги. Відкрийте (Ім'я файлу: = шлях & "\" & Ім'я файлу)Встановити CopyRng = Wkb.Sheets (1) .Range (Комірки (RowofCopySheet, 1), Cells (ActiveSheet.UsedRange.Rows.Count, ActiveSheet.UsedRange.Columns.Count))Встановити Dest = shtDest.Range ("A" & shtDest.UsedRange.SpecialCells (xlCellTypeLastCell) .Row + 1)CopyRng.Cost DestWkb.Закрити НеправдаЗакінчити ЯкщоІм'я файлу = Dir ()ПетляApplication.EnableEvents = ІстинаApplication.ScreenUpdating = ІстинаMsgBox "Макро завершено"End Sub |
Пане Excel