Слияние книг в excel

Сборка листов из разных книг в одну

Предположим, имеется куча книг Excel, все листы из которых надо объединить в один файл. Копировать руками долго и мучительно, поэтому имеет смысл использовать несложный макрос.

Открываем книгу, куда хотим собрать листы из других файлов, входим в редактор Visual Basic сочетанием клавиш Alt+F11 одноименной кнопкой на вкладке Разработчик (Developer — Visual Basic), добавляем новый пустой модуль (в меню Insert — Module) и копируем туда текст вот такого макроса:

 
Sub CombineWorkbooks()
    Dim FilesToOpen
    Dim x As Integer

    Application.ScreenUpdating = False  'отключаем обновление экрана для скорости
    
    'вызываем диалог выбора файлов для импорта
    FilesToOpen = Application.GetOpenFilename _
      (FileFilter:="All files (*.*), *.*", _
      MultiSelect:=True, Title:="Files to Merge")

    If TypeName(FilesToOpen) = "Boolean" Then
        MsgBox "Не выбрано ни одного файла!"
        Exit Sub
    End If
    
    'проходим по всем выбранным файлам
    x = 1
    While x <= UBound(FilesToOpen)
        Set importWB = Workbooks.Open(Filename:=FilesToOpen(x))
        Sheets().Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
        importWB.Close savechanges:=False
        x = x + 1
    Wend

    Application.ScreenUpdating = True
End Sub

После этого можно вернуться в Excel и запустить созданный макрос на вкладке Разработчик кнопкой Макросы (Developer — Macros) или нажав Alt+F8. Отобразится диалоговое окно открытия файла, где необходимо указать один или несколько (удерживая Ctrl или Shift) файлов, листы из которых надо добавить к текущей книге — и задача решена!

Ссылки по теме

  • Что такое макросы, куда вставлять код макроса на Visual Basic
  • Автоматическая сборка заданных листов из заданных книг с помощью надстройки PLEX
  • Автоматическая сборка данных с нескольких листов на один итоговый лист с помощью надстройки PLEX

Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel Starter 2010 Еще…Меньше

Важно: Прежде чем продолжить, вы должны быть уверены, что хотите использовать этот способ. Общие книги имеют ограничения, и одним из них, в частности, является невозможность редактирования с помощью Excel в Интернете. Поэтому мы настоятельно рекомендуем совместное редактирование, которое является заменой общих книг.

  1. Откройте вкладку Рецензирование и посмотрите, есть ли на ней кнопка Общий доступ к книге. Если кнопки нет, ее необходимо отобразить. Кроме того, потребуется отобразить кнопку «Сравнить и объединить книги». В этой статье объясняется, как отобразить эти кнопки.

  2. На вкладке Рецензирование или на панели быстрого доступа нажмите кнопку Общий доступ к книге Управление доступом к файлу.

  3. Установите флажок Разрешить изменять файл нескольким пользователям одновременно….

  4. Попросите других пользователей открыть файл и сохранить его копию с уникальным именем файла, отличающимся от исходного. Копии должны находиться в той же папке, что и исходная книга.

  5. Попросите других авторов внести изменения в копию и сохранить их.

    Примечания: 

    • Книгу можно объединить только с копиями, сделанными из исходного экземпляра.

    • Вы не можете объединить книгу, в которой не было разрешены изменения несколькими пользователями… параметр включен.

  6. Откройте исходную общую книгу, в которую вы хотите добавить изменения.

  7. На панели быстрого доступа нажмите кнопку Сравнить и объединить книги Кнопка "Сравнить и объединить книги".

  8. Если появится запрос, сохраните книгу.

  9. В диалоговом окне Выберите, какие файлы включить в книгу щелкните копию книги, изменения из которой вы хотите добавить. Чтобы одновременно объединить несколько копий, щелкните их имена, удерживая нажатой клавишу CTRL или SHIFT, а затем нажмите кнопку ОК.

Важно: Прежде чем продолжить, вы должны быть уверены, что хотите использовать этот способ. Общие книги имеют ограничения, поэтому мы настоятельно рекомендуем использовать вместо них совместное редактирование.

  1. На вкладке Рецензирование щелкните Поделиться книгой.

  2. На вкладке Правка щелкните Разрешить изменения несколькими пользователями…

  3. Попросите других пользователей открыть файл и сохранить его копию с уникальным именем файла, отличающимся от исходного. Копии должны находиться в той же папке, что и исходная книга.

  4. Попросите других авторов внести изменения в копию и сохранить их.

    Примечания: 

    • Книгу можно объединить только с копиями, сделанными из исходного экземпляра.

    • Вы не можете объединить книгу, в которой не было разрешены изменения несколькими пользователями… параметр включен.

  5. Откройте исходную общую книгу, в которую вы хотите добавить изменения.

  6. Щелкните меню Сервис и выберите Объединить книги….

  7. Если будет предложено, сохраните книгу.

    В диалоговом окне навигации по файлам щелкните копию книги, содержащей изменения, которые требуется объединить, а затем нажмите кнопку ОК.

См. также

Одновременная работа нескольких пользователей над книгами Excel с помощью функции совместного редактирования

Нужна дополнительная помощь?

Skip to content

Как быстро объединить несколько файлов Excel

Мы рассмотрим три способа объединения файлов Excel в один: путем копирования листов, запуска макроса VBA и использования инструмента «Копировать рабочие листы» из надстройки Ultimate Suite.

Намного проще обрабатывать данные в одном файле, чем переключаться между многочисленными книгами. Однако объединение нескольких книг Excel в один файл может быть сложным и долгим процессом, особенно если книги, которые вам нужно объединить, содержат много листов. Итак, как подойти к этой проблеме? Вы будете копировать их вручную или с помощью кода VBA? Или вы используете один из специализированных инструментов для объединения файлов Excel? 

Ниже вы найдете несколько хороших способов, позволяющих реализовать объединение.

  • Самое простое — копировать вручную.
  • Объединение файлов Excel при помощи VBA.
  • Как объединить несколько файлов с помощью Ultimate Suite.

Примечание. В этой статье мы рассмотрим, как копировать листы из нескольких книг Excel в одну книгу. Если вы ищете быстрый способ скопировать данные с нескольких листов на один общий лист, вы найдете подробную инструкцию в другой статье: Как объединить несколько листов в один.

Простой метод — копировать листы руками.

Если вам нужно объединить всего пару файлов Excel, вы можете вручную скопировать или переместить листы из одного файла в другой. Вот как это можно сделать:

  1. Откройте книги, которые мы планируем объединить.
  2. Выберите листы в исходной книге, которые вы хотите скопировать в основную книгу.

Чтобы выбрать несколько листов, используйте один из следующих приемов:

  • Чтобы выбрать соседние листы, щелкните вкладку первого, который вы хотите скопировать, нажмите и удерживайте клавишу Shift, а затем щелкните вкладку последнего. Это действие выберет все листы между ними.
  • Чтобы выбрать несмежные, удерживайте клавишу Ctrl и щелкайте вкладку каждого из них по отдельности.
  • Выделив все нужные листы, щелкните правой кнопкой мыши любую из выделенных вкладок и выберите «Переместить» или «Копировать…» .

  1. В диалоговом окне «Перемещение или копирование» выполните следующие действия:
    • В раскрывающемся списке «Переместить выбранные листы в книгу» выберите целевую книгу, в которую вы хотите объединить другие файлы.
    • Укажите, где именно должны быть вставлены вкладки. В нашем случае мы выбираем вариант вставки в конец списка.
    • Установите флажок «Создать копию», если хотите, чтобы исходные данные оставались оригинальном файле.
    • Нажмите ОК, чтобы завершить операцию.

Чтобы объединить вкладки из нескольких файлов Excel, повторите описанные выше шаги для каждой книги отдельно.

Замечание. При копировании листов вручную помните о следующем ограничении, налагаемом Excel: невозможно переместить или скопировать группу листов, если какой-либо из них содержит «умную» таблицу. В этом случае вам придется либо преобразовать таблицу в диапазон, либо использовать один из других методов, не имеющих этого ограничения.

Как объединить файлы Excel с VBA

Если у вас есть несколько файлов Excel, которые необходимо объединить в один файл, более быстрым способом будет автоматизировать процесс с помощью макроса VBA.

Ниже вы найдете код VBA, который копирует все листы из всех файлов Excel, которые вы выбираете, в одну книгу. Этот макрос MergeExcelFiles написан Алексом.

Важное замечание! Макрос работает со следующим ограничением — объединяемые файлы не должны быть открыты физически или находиться в памяти, в буфере обмена. В таком случае вы получите ошибку во время выполнения.

Sub MergeExcelFiles()
    Dim fnameList, fnameCurFile As Variant
    Dim countFiles, countSheets As Integer
    Dim wksCurSheet As Worksheet
    Dim wbkCurBook, wbkSrcBook As Workbook
 
    fnameList = Application.GetOpenFilename(FileFilter:="Microsoft Excel Workbooks (*.xls;*.xlsx;*.xlsm),*.xls;*.xlsx;*.xlsm", Title:="Choose Excel files to merge", MultiSelect:=True)
 
    If (vbBoolean <> VarType(fnameList)) Then
 
        If (UBound(fnameList) > 0) Then
            countFiles = 0
            countSheets = 0
 
            Application.ScreenUpdating = False
            Application.Calculation = xlCalculationManual
 
            Set wbkCurBook = ActiveWorkbook
 
            For Each fnameCurFile In fnameList
                countFiles = countFiles + 1
 
                Set wbkSrcBook = Workbooks.Open(Filename:=fnameCurFile)
 
                For Each wksCurSheet In wbkSrcBook.Sheets
                    countSheets = countSheets + 1
                    wksCurSheet.Copy after:=wbkCurBook.Sheets(wbkCurBook.Sheets.Count)
                Next
 
                wbkSrcBook.Close SaveChanges:=False
 
            Next
 
            Application.ScreenUpdating = True
            Application.Calculation = xlCalculationAutomatic
 
            MsgBox "Processed " & countFiles & " files" & vbCrLf & "Merged " & countSheets & " worksheets", Title:="Merge Excel files"
        End If
 
    Else
        MsgBox "No files selected", Title:="Merge Excel files"
    End If
End Sub

Как добавить этот макрос в книгу

Если вы хотите вставить макрос в свою книгу, выполните следующие обычные действия:

  1. нажимать Alt + F11 , чтобы открыть редактор Visual Basic.
  2. Щелкните правой кнопкой мыши ThisWorkbook на левой панели и выберите « Вставить» > « Модуль» в контекстном меню.
  3. В появившемся окне (Окно кода) вставьте указанный выше код.

Более подробная инструкция описана в разделе Как вставить и запустить код VBA в Excel .

Кроме того, вы можете загрузить макрос в файле Excel, открыть его в этой книге (включить выполнение макросов, если будет предложено), а затем переключиться на свою собственную книгу и нажать Alt + F8 для его запуска. Если вы новичок в использовании макросов в Excel, следуйте подробным инструкциям ниже.

Как использовать макрос MergeExcelFiles

Откройте файл Excel, в котором вы хотите объединить листы из других книг, и выполните следующие действия:

  1. Нажмите комбинацию Alt + F8, чтобы открыть окно диалога.
  2. В разделе « Имя макроса» выберите MergeExcelFiles и нажмите «Выполнить».

  1. Откроется стандартное окно проводника, вы выберите одну или несколько книг, которые хотите объединить, и нажмите «Открыть» . Чтобы выбрать несколько файлов , удерживайте нажатой клавишу Ctrl, указывая на их имена.

В зависимости от того, сколько файлов вы выбрали, дайте макросу несколько секунд или минут для их обработки. После завершения всех операций он сообщит вам, сколько файлов было обработано и сколько листов было объединено:

Как объединить несколько файлов с помощью Ultimate Suite.

Если вам не очень комфортно с VBA и вы ищете более простой и быстрый способ объединить файлы Excel, обратите внимание на инструмент «Копирование листов (Copy Sheets)» — одну из более чем 60 функций, включенных в невероятно функциональную программу Ultimate Suite for Excel. Она работает в версиях Excel 2010-2019.

С Ultimate Suite объединение нескольких файлов Эксель в один так же просто, как раз-два-три (буквально, всего 3 быстрых шага). Вам даже не нужно открывать те из них, которые вы хотите объединить. И это могут быть два файла или несколько — не важно.

  1. Открыв главную книгу, перейдите на вкладку «Ablebits Data» и нажмите «Копировать листы (Copy Sheets)» > «Выбранные в одну книгу (Selected Sheets to one workbook)».

  1. В диалоговом окне выберите файлы (а в них — листы), которые вы хотите объединить, и нажмите «Далее (Next)» .

Советы:

  • Чтобы выбрать все листы в определенной книге, просто поставьте галочку в поле рядом с именем книги, и все они в этом файле будут выбраны автоматически.
  • Чтобы объединить листы из закрытых книг, нажмите кнопку «Добавить файлы…» и выберите столько книг, сколько нужно. Это добавит выбранные файлы только в окно копирования, не открывая их в Excel.
  • По умолчанию копируются все данные. Однако, в разных листах можно выбрать разные диапазоны для объединения. Чтобы скопировать только определенную область, наведите указатель мыши на имя вкладки, затем щелкните значок    и выберите нужный диапазон. 
  • При необходимости укажите один или несколько дополнительных параметров и нажмите «Копировать» . На снимке скриншоте а ниже показаны настройки по умолчанию: Вставить все (формулы и значения) и Сохранить форматирование.

Дайте мастеру копирования листов несколько секунд для обработки и наслаждайтесь результатом!

На этой странице есть подробное описание всех возможностей работы мастера копирования.

Чтобы поближе познакомиться с этим и другими инструментами для Excel, вы можете загрузить ознакомительную версию Ultimate Suite.

Итак, я надеюсь, вы получили ответ на вопрос — как быстро объединить несколько файлов Excel в один.

Объединение копий общей книги

​Смотрите также​​ в другую книгу​ из всех файлов-источников​ быть я неправильно​или еще что-то?​ данных, лист со​(Add)​ в будущем возможно​ вышла, я не​ только вариант где​ Excel, все листы​ категории должны быть​Все ссылки​ для консолидации данных.​ их можно объединить​нажмите кнопку​ быстрого доступа нажмите​Примечание:​ — Ctrl+V)​ в первую строку​ применяю макрос или​

​Poltava​​ сводной информацией мог​в окне консолидации,​ поместить между стартовым​ понимаю почему он​ можно работать с​ из которых надо​ названы одинаково. Например,​.​Выделите на каждом листе​ на одном листе​Разрешить изменения для нескольких​ кнопку​ Мы стараемся как можно​Agalets​ файла-приемника и отдельно​ это зависит от​
Попробуйте поработать с Office 365 или последней версией Excel

​: Неправильно поняли! ничего​

​ обновляться.​​ чтобы добавить выделенный​ и финальным листами​ мне копирует шапку,​ листами, но мне​ объединить в один​ если один из​После добавления данных из​ нужные данные.​ с помощью команды​ пользователей…​Общий доступ к книге​ оперативнее обеспечивать вас​: Подскажите, пожалуйста, что​

  1. ​ вставлять 2-n строки​​ количества данных в​​ менять не надо!​Количество столбцов и​ диапазон в список​​ дополнительные листы с​​ шапка у меня​ это не подходит​ файл. Копировать руками​ столбцов называется​ всех исходных листов​Путь к файлу вводится​ «Консолидация». Например, если​Попросите других пользователей открыть​

  2. ​.​​ актуальными справочными материалами​​ я делаю неправильно.​ из источников в​ файле. Помогите пож.​​ макрос сам перебирает​ Управление доступом к файлу​ их наименования в​

  3. ​ объединяемых диапазонов.​​ данными, которые также​ идет до 10​​Вот код​

  4. ​ долго и мучительно,​Сред.​ и книг нажмите​ в поле​ есть отдельный лист​ файл и сохранить​Установите флажок​ на вашем языке.​ Я объединяю несколько​

  5. ​ первую ПУСТУЮ строку​Читаем Правила форума,​ все листы в​

    ​ каждом листе совпадает,​​Повторите эти же действия​

    • ​ станут автоматически учитываться​ строчки и можете​200?’200px’:»+(this.scrollHeight+5)+’px’);»>​

    • ​ поэтому имеет смысл​, а другой —​ кнопку​​Все ссылки​​ расходов для каждого​

  6. ​ его копию с​Разрешить изменять файл нескольким​ Эта страница переведена​

  7. ​ книг в одну​​ приемника. Немного подольше​​ создаём свою тему,​​ книге будь их​ Кнопка ​ а кол-во строк​

  8. ​ для файлов Риты​ при суммировании.​

  9. ​ объяснить за что​​Option Explicit​ использовать несложный макрос.​​Среднее​ОК​.​ регионального представительства, с​ уникальным именем файла,​ пользователям одновременно…​ автоматически, поэтому ее​ () . Все​ будет, но зато​​ прикладываем файл с​​ там 3, 5​

​ всегда отличается.​​ и Федора. В​Если исходные таблицы не​ это отвечает Cells(rrow,​Const rrow =​Открываем книгу, куда хотим​, консолидация не просуммирует​.​После добавления данных из​

  1. ​ помощью консолидации можно​​ отличающимся от исходного.​​.​​ текст может содержать​​ книги одинаково организованны,​

  2. ​ код попроще.​​ примером. Эта тема​​ или 10​​Заранее благодарю!​ итоге в списке​

  3. ​ абсолютно идентичны, т.е.​ 6), у меня​ 2​ собрать листы из​ эти столбцы.​Примечание:​ всех исходных листов​ создать на базе​ Копии должны находиться​

  4. ​Попросите других пользователей открыть​ неточности и грамматические​ только разные данные.​

    ​По сбору данных​​ закрыта​

    • ​KuklP​KuklP​ должны оказаться все​

    • ​ имеют разное количество​ постоянно на нее​Private Sub Worksheet_Activate()​​ других файлов, входим​​Откройте каждый из исходных​

  5. ​ Любые названия, не совпадающие​ и книг нажмите​ этих данных корпоративный​

  6. ​ в той же​​ файл и сохранить​​ ошибки. Для нас​​ В итогу у​​ куча всего есть​

  7. ​ReAnima​: Все верно​

    ​: ?​ три диапазона:​ строк, столбцов или​ ругается​Dim r As​ в редактор Visual​ листов.​​ с названиями в​​ кнопку​

support.office.com

Объединение данных с нескольких листов

​ лист расходов. Такой​​ папке, что и​ его копию с​ важно, чтобы эта​ меня в финальной​ здесь http://excelvba.ru/category/Excel/consolidation​: Доброе время суток,​migo​migo​Обратите внимание, что в​ повторяющиеся данные или​Ermak27​ Range, sh As​ Basic (​На конечном листе щелкните​ других исходных областях,​ОК​ лист может содержать​ исходная книга.​ уникальным именем файла,​ статья была вам​ книге отображаются данные​

​ReAnima​ форумчане.​: Все сработало, спасибо​: Спасибо, не знал​ данном случае Excel​ находятся в разных​: подскажите плиз​ Worksheet, ind&​ALT+F11​ верхнюю левую ячейку​ могут привести к​.​ итоговые и средние​Попросите пользователей внести изменения​ отличающимся от исходного.​ полезна. Просим вас​ только одной книги,​: спасибо, за ответ.​Столкнулся с проблемой​ еще раз!!​ про эту функцию.​ запоминает, фактически, положение​

​ файлах, то суммирование​_Boroda_​Application.ScreenUpdating = False​), добавляем новый пустой​ области, в которой​ появлению в консолидированных​Для консолидации по категории​ данные по продажам,​ в копии и​ Копии должны находиться​ уделить пару секунд​ а не всех..​ если изменить код​ сбора данных с​Матрёна​ Но к сожалению​ файла на диске,​ при помощи обычных​

​: Cells(rrow, 6) это​Range(«a» & rrow​ модуль (в меню​

Консолидация по расположению

​ требуется разместить консолидированные​ данных отдельных строк​ диапазон данных на​ текущим уровням запасов​ сохранить их.​ в той же​ и сообщить, помогла​

  1. ​Книг, которые нужно​ таким образом, то​ огромного кол-ва документов​: migo!​ это, похоже, не​

  2. ​ прописывая для каждого​ формул придется делать​ ячейка, номер строки​ & «:ar» &​Insert — Module​

    ​ данные.​​ или столбцов.​ каждом из исходных​ и наиболее популярным​Примечания:​

  3. ​ папке, что и​​ ли она вам,​​ объединить, будет в​​ для 2-х файлов​​ в 1-н. Через​​См. вариант.​​ то что нужно.​

    Кнопка

  4. ​ из них полный​​ для каждой ячейки​​ которой равняется значению​ Cells(rrow, 2).End(xlDown).Row).Clear​

  5. ​) и копируем туда​Примечание:​

    ​Для консолидации по расположению​ листов должен иметь​​ продуктам в рамках​​ ​

  6. ​ исходная книга.​ с помощью кнопок​ итоге много, здесь​ работает, если вытягиваешь​​ поиск на форуме​​Я — не​

Консолидация по категории

​Если строить сводную​ путь (диск-папка-файл-лист-адреса ячеек).​ персонально, что ужасно​ rrow, а номер​For Each sh​ текст вот такого​ Убедитесь, что справа и​ диапазон данных на​ формат списка без​ всей организации.​Объединить книгу можно только​​Попросите пользователей внести изменения​​ внизу страницы. Для​​ просто две для​​ данные из 3-х​ нашел подходящий вариант,​

  1. ​ программист и с​ таблицу таким образом,​

  2. ​ Чтобы суммирование происходило​ трудоемко. Лучше воспользоваться​ столбца равняется 6​ In Worksheets​ макроса:​

    ​ снизу достаточно свободных​​ каждом из исходных​ пустых строк и​Тип консолидации следует выбирать​ с копиями, созданными​

  3. ​ в копии и​​ удобства также приводим​​ примера​​ файлов надо менять​​ но не могу​​ законами программирования в​​ то она получается​

    Кнопка

  4. ​ с учетом заголовков​​ принципиально другим инструментом.​​А для правильной​With sh​

  5. ​Sub CombineWorkbooks() Dim​​ ячеек для консолидированных​​ листов должен иметь​ столбцов. Кроме того,​ с учетом того,​​ из оригинала.​​ сохранить их.​​ ссылку на оригинал​​Файлы удалены: превышение​ на «-2».​

  6. ​ его подстроить под​ объектно-ориентированных средах не​ вертикально — ориентированной.​ столбцов и строк​Рассмотрим следующий пример. Имеем​ работы именно этого​If .Index <>​

    ​ FilesToOpen Dim x​ данных.​​ формат списка без​​ категории должны быть​

  7. ​ как выглядят объединяемые​Не удается выполнить слияние​Примечания:​ (на английском языке).​​ допустимого размера вложения​​ReAnima​

    ​ себя. Лист, с​​ знакома, поэтому мой​В «списке полей​ необходимо включить оба​ три разных файла​ макроса нужно:​ ActiveSheet.Index Then​ As Integer Application.ScreenUpdating​

Консолидация по расположению

​На вкладке​ пустых строк и​ названы одинаково. Например,​ листы. Если данные​ книги, если она​ ​Важно:​

  1. ​ [МОДЕРАТОР]​: Можно это автоматизировать,​ которого необходимо вытащить​ алгоритм тривиален и​ для добавления в​

  2. ​ флажка​ (​1. сохранить книгу​Set r =​ = False ‘отключаем​

    ​Данные​​ столбцов.​ если один из​ на листах расположены​ еще не разрешается​

  3. ​Объединить книгу можно только​​ В этой статье описан​​vikttur​​ чтобы не менять​​ данные 1-н, называется​​ в нем есть​​ отчет» сводной таблицы​

    Вкладка

  4. ​Использовать в качестве имен​​Иван.xlsx​​ в формате xlsx​ .Range(«a» & rrow​

  5. ​ обновление экрана для​в разделе​Откройте каждый из исходных​​ столбцов называется​​ единообразно (названия строк​

    ​вносить изменения несколькими пользователями…​ с копиями, созданными​​ способ объединения копий​​: Правила не читаете.​

  6. ​ код в зависимости​ в каждой книге​ элемент «ущербности» -​ нет возможности выбрать​​(Use labels)​​,​

Консолидация по категории

​ или xlsb​ & «:ar» &​ скорости ‘вызываем диалог​Сервис​ листов и убедитесь​Сред.​ и столбцов могут​параметр включен.​ из оригинала.​ общей книги. Общие​Igorka80​​ от кол-ва файлов,​​ он аналогично, если​​ для подсчета строк​​ отдельные столбцы исходного​. Флаг​

  1. ​Рита.xlsx​2. заменить все​

  2. ​ .Cells(.Rows.Count, 2).End(xlUp).Row)​ выбора файлов для​нажмите кнопку​ в том, что​, а другой —​

    ​ при этом различаться),​​Откройте исходную общую книгу,​Не удается выполнить слияние​ книги использовались ранее​: Доброе время суток​

  3. ​ с которых тянутся​​ я прописываю его​​ на листах он​​ диапазона данных.​​Создавать связи с исходными​​и​​ ar на NA​

    Вкладка

  4. ​r.Copy Cells(rrow +​​ импорта FilesToOpen =​​Консолидация​ данные на них​

  5. ​Среднее​​ воспользуйтесь консолидацией по​​ в которую вы​ книги, если она​ для организации совместной​​ подскажите как объединить​​ данные ?​​ 1-н раз при​​ требует наличия столба​А мне нужна​

  6. ​ данными​Федор​3. заполнить в​ ind, 1)​ Application.GetOpenFilename _ (FileFilter:=»All​.​ расположены одинаково.​, консолидация не просуммирует​​ расположению. Если же​​ хотите добавить изменения.​

    ​ еще не разрешается​ работы нескольких пользователей.​​ данные с двух​​_Boroda_​

  7. ​ выполнении процедуры выходит​ «без дыр».​ возможность в поле​(Create links to source​​.xlsx​​ листах 1-3 столбец​

    ​ind = ind​​ files (*.*), *.*»,​Выберите в раскрывающемся списке​На конечном листе щелкните​ эти столбцы.​ на листах для​В меню​вносить изменения несколькими пользователями…​

support.office.com

Сборка листов из разных книг в одну

​ Эта функция имеет​ разных книг. Есть​: Если лист всегда​ ошибка при попытке​В Вашем примере​ «название строк» указывать​ data)​) с тремя таблицами:​

​ B в тех​ + r.Rows.Count​ _ MultiSelect:=True, Title:=»Files​функцию​ верхнюю левую ячейку​​Откройте каждый из исходных​​ соответствующих категорий используются​Сервис​​параметр включен.​​ множество ограничений и​ один документ он​ одинаковый, то почему​

​ извлечения данных из​ я добавила столб​ несколько названий столбцов​позволит в будущем​Хорошо заметно, что таблицы​ строках, которые нужно​End If​ to Merge») If​, которую требуется использовать​ области, в которой​ листов.​ одинаковые названия строк​выберите команду​Откройте исходную общую книгу,​ была заменена функцией​ ведёт подсчет за​ просто не написать​ 2-го файла, если​ А в таблицах​ исходной таблицы.​

​ (при изменении данных​ не одинаковы -​ скопировать.​End With​​ TypeName(FilesToOpen) = «Boolean»​ для консолидации данных.​ требуется разместить консолидированные​​На конечном листе щелкните​​ и столбцов (данные​​объединить книги…​ в которую вы​ совместного редактирования. Совместное​ месяц, а второй​200?’200px’:»+(this.scrollHeight+5)+’px’);»>Set rSheets = rSheets.Offset(rSheet.Row​ прописываю 2 раза,​ на всех листах.​KuklP​

planetaexcel.ru

Объединить книг в одну книгу (Объединить книг в одну книгу)

​ в исходных файлах)​​ у них различные​Хотя я бы​Next​ Then MsgBox «Не​Установите флажки в группе​ данные.​ верхнюю левую ячейку​ при этом могут​.​ хотите добавить изменения.​ редактирование позволяет гораздо​ документ ведет подсчет​
​ — rSheets.Row)​ то процедура выполняется,​florenus​: Может так(жмем кнопку)?​ производить пересчет консолидированного​ размеры и смысловая​
​ написал немного иначе.​
​Application.ScreenUpdating = True​
​ выбрано ни одного​
​Использовать в качестве имен​Примечание:​
​ области, в которой​
​ быть расположены по-разному),​Если появится запрос, сохраните​На​
​ эффективнее объединять изменения​
​ за год. Надо​ReAnima​ но данные с​
​:​200?'200px':''+(this.scrollHeight+5)+'px');">Sub www()​
​ отчета автоматически.​
​ начинка. Тем не​ Но и так​
​End Sub​ файла!" Exit Sub​, указывающие, где в​ Убедитесь, что справа и​
​ требуется разместить консолидированные​ используйте консолидацию по​
​ книгу.​панели быстрого доступа​
​ и доступно в​
​ чтоб не открывать​
​: Спасибо, завтра попробую.​
​ 1-й книги вставляются​
​KuklP​

​Dim ws As​После нажатия на​ менее их можно​ работает.​

​Я ниже прикрепил​​ End If ‘проходим​ исходных диапазонах находятся​ снизу достаточно свободных​ данные.​ категории.​В диалоговом окне Навигация​wink
​нажмите кнопку​ некоторых версиях Excel,​
​ годовую книгу синхронизировать​

​ReAnima​​ 1-н раз, а​

​, не могли бы​​ Worksheet, l&​
​ОК​
​ собрать в единый​Имеем несколько однотипных таблиц​
​ свой пример, подскажите​

​ по всем выбранным​​ названия:​ ячеек для консолидированных​Примечание:​
​Более новые версии​ по файлам щелкните​Сравнить и объединить книги​
​ включая Excel 2016 для​

​ с месяцем.​​: не работает, на​ данные со 2-й​ Вы расшифровать макрос?​

​With Sheets(«Svod»)​​видим результат нашей​ отчет меньше, чем​ на разных листах​ пожалуйста как решить​ файлам x =​подписи верхней строки​ данных.​ Убедитесь, что справа и​ Office 2011 г.​ копию книги, которая​.​ подписчиков Office 365.​

​Alex77755​​ извлечении данных со​sad

​ книги вставляются 2​​KuklP​.UsedRange.Offset(1).ClearContents​ работы:​ за минуту. Единственным​ одной книги. Например,​
​ эту проблему!​ 1 While x​,​
​На вкладке​ снизу достаточно свободных​ ​
​ содержит изменения, которые​Если появится запрос, сохраните​
​Windows macOS ​: Dim arr, i​ 2-го файла (тестировал​ раза. Сам разобраться​: Он не зашифрован.​
​For Each ws​Наши файлы просуммировались по​ условием успешного объединения​ вот такие:​

excelworld.ru

Консолидация (объединение) данных из нескольких таблиц в одну

Способ 1. С помощью формул 

​KuklP​После этого можно вернуться​значения левого столбца​Данные​

Как объединить книги в одну вȎxcel

​ ячеек для консолидированных​Для консолидации по расположению​ вы хотите объединить,​ книгу.​Важно:​

​ As Long, j​ на 3-х) выдает​ не смог, подскажите,​florenus​ In Worksheets​

​ совпадениям названий из​

​ (консолидации) таблиц в​Необходимо объединить их все​: Для двух книг​ в Excel и​либо оба флажка​в разделе​ данных.​

​ диапазон данных на​ а затем нажмите​В диалоговом окне​ Прежде чем продолжить, необходимо​ As Long arr​

​ ошибку.​

​ что нужно поменять​:​If Not ws.Name​ крайнего левого столбца​ подобном случае является​ в одну общую​ быстрей скопировать вручную,​ запустить созданный макрос​ одновременно.​Сервис​На вкладке​ каждом из исходных​ кнопку​Выберите, какие файлы включить​

Способ 2. Если таблицы неодинаковые или в разных файлах

​ убедиться, что вы​ = GetObject(«d:basa.xls»).worksheets(1).Range(«C3», «C9954»).Value​Yaroslaw​ в процедуре. Заранее​KuklP​ = «Svod» Then​ и верхней строки​ совпадение заголовков столбцов​ таблицу, просуммировав совпадающие​ чем писать макрос.​ через меню​Выделите на каждом листе​нажмите кнопку​

​Данные​ листов должен иметь​ОК​​ в книгу​​ хотите использовать этот​​ ‘.usedrange.Value ‘Всё -​​: Подскажите как можно​​ спасибо. Файл во​​, извините не правильно​​l = .Cells.Find(«*»,​

Как объединить книги в одну вȎxcel

​ выделенных областей в​ и строк. Именно​ значения по кварталам​ А для Вас​Сервис — Макрос -​ нужные данные. Не​Консолидация​в группе​ формат списка без​.​щелкните копию книги,​ метод. Общие книги​ диапазон в массиве​ в excel 2013​ вложении.​ выразился. Вы не​ [a1], xlFormulas, 1,​ каждом файле. Причем,​ по первой строке​ и наименованиям.​

​ глядишь и стимул​ Макросы (Tools -​

  1. ​ забудьте включить в​
  2. ​.​Работа с данными​
  3. ​ пустых строк и​Примечание:​ изменения из которой​ имеют ограничения, а​​Igorka80​ ​ объединить две рабочих​​P.S. данные с​
    Как объединить книги в одну вȎxcel
  4. ​ могли бы расписать​​ 1, 2).Row +​ ​ если развернуть группы​​ и левому столбцу​Самый простой способ решения​ будет подучить ВБА​ Macro — Macros)​ них ранее выбранные​​Выберите в раскрывающемся списке​ ​нажмите кнопку​​ столбцов.​Мы стараемся как​ вы хотите добавить.​ один из них​
  5. ​: я не могу​ книги?​ 1-й книги необходимы​ какая команда что​ 1​ (значками плюс слева​
    Как объединить книги в одну вȎxcel

​ каждой таблицы Excel​ задачи «в лоб»​На всякий случай​или нажав​ данные из верхней​функцию​Консолидация​Откройте каждый из исходных​ можно оперативнее обеспечивать​ Чтобы одновременно объединить​ не позволяет редактировать​ сообразить как надо​​Sanja​​ полностью, с каждой​​ выполняет.​​ws.UsedRange.Offset(1).Copy .Range(«a» &​ от таблицы), то​ ​ будет искать совпадения​ — ввести в​​ загляните:​ALT+F8​ строки или левого​, которую требуется использовать​.​

​ листов и убедитесь​​ вас актуальными справочными​​ несколько копий, щелкните​ их с помощью​

Как объединить книги в одну вȎxcel

​ прописать чтоб на​: А как надо?​ последующей книги без​Если не трудно​ l)​ можно увидеть из​ и суммировать наши​ ячейку чистого листа​http://forum.msexcel.ru/index.php/topic,7217.msg46197.html#new​. Отобразится диалоговое окно​ столбца. Затем нажмите​ для консолидации данных.​Выберите в раскрывающемся списке​ в том, что​ материалами на вашем​

Как объединить книги в одну вȎxcel

planetaexcel.ru

объединение данных с нескольких листов книги на один (Макросы Sub)

​ их имена, удерживая​​ Excel Online. Поэтому​
​ сегодня было видно​ Просто перенести листы​ 1-й строки (шапка).​
​ конечно. Мне нужно,​End If​ какого именно файла​
​ данные.​ формулу вида​Ermak27​ открытия файла, где​ кнопку​Выделите на каждом листе​функцию​ данные на них​ языке. Эта страница​ нажатой клавишу CTRL​ мы настоятельно рекомендуем​ что есть сегодня,​
​ из одной в​_Boroda_​ чтобы листы собирались​Next​ какие данные попали​
​Для того, чтобы выполнить​

​=’2001 год’!B3+’2002 год’!B3+’2003 год’!B3​​: Может кто подскажет​

​ необходимо указать один​​Добавить​ нужные данные и​, которую требуется использовать​ расположены одинаково.​ переведена автоматически, поэтому​
​ или SHIFT, а​ использовать совместное редактирование,​ месяц там ведётся​ другую?​
​: Что-то я не​ не со второй​End With​ в отчет и​ такую консолидацию:​которая просуммирует содержимое ячеек​
​RAN​ или несколько (удерживая​.​ нажмите кнопку​ для консолидации данных.​

​На конечном листе щелкните​​ ее текст может​
​ затем нажмите кнопку​
​ которое является заменой​ основная ведомость, а​
​Yaroslaw​
​ очень понял такого​
​ строки а с​End Sub​
​ ссылки на исходные​Заранее откройте исходные файлы​
​ B2 с каждого​: Подсказываю​ CTRL или SHIFT)​Путь к файлу вводится​
​Добавить​Установите флажки в группе​
​ верхнюю левую ячейку​
​ содержать неточности и​
​ОК​
​ для общих книг.​

​ год он переходный​​: две книги с​ замута с названиями​ первой.​thumb​migo​
​ файлы:​Создайте новую пустую книгу​ из указанных листов,​http://www.excel-vba.ru/chto-um….li-knig​ файлов, листы из​ в поле​.​
​Использовать в качестве имен​ области, в которой​ грамматические ошибки. Для​.​Откройте вкладку​ между месяцами и​
​ одинаковыми данными объединить​

​ и с парными​​_Boroda_​: Да, то что​migo​ (Ctrl + N)​ и затем скопировать​Но согласен с​ которых надо добавить​

​Все ссылки​​Путь к файлу вводится​smile

​, указывающие, где в​​ требуется разместить консолидированные​ нас важно, чтобы​

​Важно:​​Рецензирование​
​ его не кто​
​ в другую книгу​ Setами, ну да​: .Offset(1) сотрите​ надо! я именно​: Здравствуйте!​Установите в нее активную​ ее на остальные​ предыдущим оратором​ к текущей книге.​.​ в поле​ исходных диапазонах находятся​
​ данные.​ эта статья была​ Прежде чем продолжить, вы​и посмотрите, есть​

​ не должен видеть.​​ (общую)​​ ладно. У Вас​​Aliya​ так и хотел​

​Прошу Вашей помощи​​ ячейку и выберите​

​ ячейки вниз и​​Ответ на ЛС.​​Ermak27​​После добавления данных из​Все ссылки​ названия:​Примечание:​ вам полезна. Просим​
​ должны быть уверены,​ ли на ней​ Помогите а то​Z​ rSheets получается из​: Здр-те​

​спасибо!!​​ в решении следующей​

​ на вкладке (в​​ вправо.​

​Ermak27​​: Добрый день! Столкнулся​ всех исходных листов​.​подписи верхней строки​ Убедитесь, что справа и​ вас уделить пару​ что хотите использовать​ кнопка​ за компом работает​: А как задали?​ ячеек В2:В3, а​Aliya​Я правильно понял,​ задачи:​ меню)​Если листов очень много,​: Подскажите пожалуйста почему​
​ с такой проблемой,​ и книг нажмите​После добавления данных из​,​ снизу достаточно свободных​

excelworld.ru

Объединение данных с нескольких книг в одну (Формулы/Formulas)

​ секунд и сообщить,​​ этот способ. Общие​Общий доступ к книге​
​ очень много народу​ Что сами сделали​ нужно, насколько я​: у меня вопрос.​ чтоб сделать такой​есть книга эксель​Данные — Консолидация​ то проще будет​ у меня выдает​ есть две книги​ кнопку​ всех исходных листов​значения левого столбца​ ячеек для консолидированных​ помогла ли она​ книги имеют ограничения,​. Если кнопки нет,​ и каждый раз​ и что не​ понял, только В2.​ Мне понравился очень​ же макрос в​ состоящая из 12​(Data — Consolidate)​ разложить их все​ ошибку​ каждая книга для​ОК​ и книг нажмите​либо оба флажка​ данных.​ вам, с помощью​
​ поэтому мы настоятельно​ ее необходимо отобразить.​ искать где они​ получается?​Попробуйте написать с​

​ ваш макрос. У​​ моем файле, состоящем​ листов.​. Откроется соответствующее окно:​ подряд и использовать​200?’200px’:»+(this.scrollHeight+5)+’px’);»>Range(«a» & rrow &​ каждой организации, они​.​ кнопку​ одновременно.​На вкладке​
​ кнопок внизу страницы.​ рекомендуем использовать вместо​
​ Кроме того, потребуется​ нарушили формулу утомляет.​См. - ...​ минус единицей​
​ меня имеется файл​ из 9 страниц,​на каждом из​Установите курсор в строку​ немного другую формулу:​ «:ar» & Cells(rrow,​ туда заполняют данные​Примечание:​ОК​Выделите на каждом листе​Данные​ Для удобства также​ них совместное редактирование.​
​ отобразить кнопку «Сравнить​Igorka80​The_Prist​

​200?’200px’:»+(this.scrollHeight+5)+’px’);»>Set rSheets = rSheets.Offset(rSheet.Row​​ с несколькими страницами.​ я должен изменить​ этих листов находится​Ссылка​=СУММ(‘2001 год:2003 год’!B3)​ 6).End(xlDown).Row).Clear​ и есть итоговая​ Любые названия, не совпадающие​

​.​​ нужные данные. Не​в группе​ приводим ссылку на​На вкладке​ и объединить книги».​: Я не могу​

​: Какой вопрос -​​ — rSheets.Row).Resize(rSheets.Rows.Count -​ В каждом листе​ только эту строку?​
​ данные, которые надо​(Reference)​

​Фактически — это суммирование​​файл прикрепил ниже​

​ книга по этим​​ с названиями в​Для консолидации по категории​ забудьте включить в​Работа с данными​ оригинал (на английском​

excelworld.ru

Объединение двух книг в excel 2013

​Рецензирование​​ В этой статье​ понять как его​ такой ответ.​ rSheet.Row + rSheets.Row​

​ примерно 5000 строк.​​l = .Cells.Find(«*»,​ совместить на отдельном​и, переключившись в​ всех ячеек B3​

​_Boroda_​​ организация, как автоматически​ других исходных областях,​ диапазон данных на​ них ранее выбранные​

​нажмите кнопку​​ языке) .​нажмите кнопку​ объясняется, как отобразить​ вставить чтоб он​
​Открываете обе книги​;)

​ — 1)​​ И когда я​ , xlFormulas, 1,​
​ листе этой же​ файл Иван.xlsx, выделите​ на листах с​: А почему у​ собрать данные с​ могут привести к​ каждом из исходных​

​ данные из верхней​​Консолидация​Если данные, которые требуется​открыть книгу​ эти кнопки.​ начал работать.​ и из одной​А по поводу​ применяю ваш макрос,​ 1, 2, 3,​ книги. В идеале​ таблицу с данными​ 2001 по 2003,​
​ Вас rrow=6, а​ двух книг в​ появлению в консолидированных​ листов должен иметь​ строки или левого​
​.​ проанализировать, представлены на​.​

​На вкладке​​Alex77755​

planetaexcel.ru

Как объединить данные двух книг не открывая вторую

​ копируете данные в​​ первой строки -​ то он очень​ 4, 5, 6,​ — чтоб при​ (вместе с шапкой).​ т.е. количество листов,​ не 10?​ итоговую?​ данных отдельных строк​ формат списка без​ столбца.​Выберите в раскрывающемся списке​

​ нескольких листах или​​На вкладке​Рецензирование​: без защит «от​ другую(выделяете нужные данные​ можно всегда вставлять​ долго думает. Вопрос:​

​ 7, 8, 9).Row​​ появлении в одном​ Затем нажмите кнопку​ по сути, может​Ermak27​Я перелазил кучу​ или столбцов.​ пустых строк и​Путь к файлу вводится​функцию​ в нескольких книгах,​Правка​или на панели​ дурака»​ — Ctrl+C, переходите​ отдельно первую строку​ Почему так. Может​ + 1​

​ из листов новых​​Добавить​ быть любым. Также​: Да заметил ошибочка​ форумов и нашел​

​Предположим, имеется куча книг​​ столбцов. Кроме того,​ в поле​

CyberForum.ru

​, которую требуется использовать​

Вы когда-нибудь застревали, когда вам нужно было объединить несколько книг в основную книгу в Excel? Самое ужасное, что книги, которые нужно объединить, содержат несколько листов. И как объединить только указанные листы нескольких книг в одну книгу? В этом руководстве показано несколько полезных методов, которые помогут вам поэтапно решить проблему.

  • Способ A: Объедините несколько книг в одну с помощью функции перемещения или копирования
  • Способ B: Объединение нескольких книг или указанных листов книг в основную книгу с помощью VBA
  • Метод C: Легко объединяйте несколько книг или указанные листы книг в одну книгу

Объедините несколько книг в одну книгу с помощью функции перемещения или копирования

Если необходимо объединить всего несколько книг, вы можете использовать команду «Переместить» или «Копировать», чтобы вручную переместить или скопировать листы из исходной книги в основную книгу.

1. Откройте книги, которые вы объедините в основную книгу.

2. Выберите листы в исходной книге, которые вы переместите или скопируете в основную книгу.

Ноты:

1). Вы можете выбрать несколько несмежных листов, удерживая Ctrl и щелкая вкладки листа одну за другой.

2). Чтобы выбрать несколько соседних листов, нажмите вкладку первого листа и удерживайте Shift ключ, а затем щелкните вкладку последнего листа, чтобы выбрать их все.

3). Вы можете щелкнуть правой кнопкой мыши на любой вкладке листа, щелкнуть Выбрать все листы в контекстном меню, чтобы выбрать все листы в книге одновременно.

3. После выбора необходимых листов щелкните правой кнопкой мыши вкладку листа, а затем щелкните Переместить или скопировать из контекстного меню. Смотрите скриншот:

4. Затем Переместить или скопировать всплывает диалоговое окно в Бронировать в раскрывающемся списке выберите основную книгу, в которую вы переместите или скопируете листы. Выберите переместить, чтобы закончить в Перед листом поле, отметьте Создать копию поле и, наконец, щелкните OK кнопку.

Тогда вы можете увидеть листы в двух книгах, объединенных в одну. Повторите описанные выше действия, чтобы переместить листы из других книг в основную книгу.


Объединение нескольких книг или указанных листов книг в основную книгу с помощью VBA

Если необходимо объединить несколько книг в одну, вы можете применить следующие коды VBA, чтобы быстро добиться этого. Пожалуйста, сделайте следующее.

1. Поместите все книги, которые вы хотите объединить, в одну в один каталог.

2. Запустите файл Excel (эта книга будет основной книгой).

3. нажмите другой + F11 , чтобы открыть Microsoft Visual Basic для приложений окно. в Microsoft Visual Basic для приложений окна, нажмите Вставить > Модули, затем скопируйте ниже код VBA в окно модуля.

Код VBA 1: объединить несколько книг Excel в одну

Sub GetSheets()
'Updated by Extendoffice 2019/2/20
Path = "C:UsersdtDesktopdt kte"
Filename = Dir(Path & "*.xlsx")
  Do While Filename <> ""
  Workbooks.Open Filename:=Path & Filename, ReadOnly:=True
     For Each Sheet In ActiveWorkbook.Sheets
     Sheet.Copy After:=ThisWorkbook.Sheets(1)
  Next Sheet
     Workbooks(Filename).Close
     Filename = Dir()
  Loop
End Sub
	

Ноты:

1. Приведенный выше код VBA сохранит имена листов исходных книг после слияния.

2. Если вы хотите различать, какие рабочие листы в главной книге были получены после слияния, примените приведенный ниже код VBA 2.

3. Если вы просто хотите объединить указанные листы книг в основную книгу, может помочь приведенный ниже код VBA 3.

В кодах VBA: «C: Users DT168 Рабочий стол KTE »- это путь к папке. В коде VBA 3 «Лист1, Лист3«- это указанные рабочие листы книг, которые вы объедините в основную книгу. Вы можете изменить их в зависимости от ваших потребностей.

Код VBA 2: объединить книги в одну (каждый рабочий лист будет назван с префиксом исходного имени файла):

Sub MergeWorkbooks()
'Updated by Extendoffice 2019/2/20
Dim xStrPath As String
Dim xStrFName As String
Dim xWS As Worksheet
Dim xMWS As Worksheet
Dim xTWB As Workbook
Dim xStrAWBName As String
On Error Resume Next
xStrPath = "C:UsersDT168DesktopKTE"
xStrFName = Dir(xStrPath & "*.xlsx")
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xTWB = ThisWorkbook
Do While Len(xStrFName) > 0
    Workbooks.Open Filename:=xStrPath & xStrFName, ReadOnly:=True
    xStrAWBName = ActiveWorkbook.Name
    For Each xWS In ActiveWorkbook.Sheets
    xWS.Copy After:=xTWB.Sheets(xTWB.Sheets.Count)
    Set xMWS = xTWB.Sheets(xTWB.Sheets.Count)
    xMWS.Name = xStrAWBName & "(" & xMWS.Name & ")"
    Next xWS
    Workbooks(xStrAWBName).Close
    xStrFName = Dir()
Loop
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub

Код VBA 3: объединить указанные листы книг в основную книгу:

Sub MergeSheets2()
'Updated by Extendoffice 2019/2/20
Dim xStrPath As String
Dim xStrFName As String
Dim xWS As Worksheet
Dim xMWS As Worksheet
Dim xTWB As Workbook
Dim xStrAWBName As String
Dim xI As Integer
On Error Resume Next

xStrPath = " C:UsersDT168DesktopKTE"
xStrName = "Sheet1,Sheet3"

xArr = Split(xStrName, ",")

Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xTWB = ThisWorkbook
xStrFName = Dir(xStrPath & "*.xlsx")
Do While Len(xStrFName) > 0
Workbooks.Open Filename:=xStrPath & xStrFName, ReadOnly:=True
xStrAWBName = ActiveWorkbook.Name
For Each xWS In ActiveWorkbook.Sheets
For xI = 0 To UBound(xArr)
If xWS.Name = xArr(xI) Then
xWS.Copy After:=xTWB.Sheets(xTWB.Sheets.count)
Set xMWS = xTWB.Sheets(xTWB.Sheets.count)
xMWS.Name = xStrAWBName & "(" & xArr(xI) & ")"
Exit For
End If
Next xI
Next xWS
Workbooks(xStrAWBName).Close
xStrFName = Dir()
Loop
Application.ScreenUpdating = True
Application.DisplayAlerts = True

End Sub

4. нажмите F5 ключ для запуска кода. Затем все рабочие листы или указанные рабочие листы рабочих книг в определенной папке сразу объединяются в основную книгу.


Легко объединяйте несколько книг или указанные листы книг в одну книгу

К счастью, Сочетать рабочая тетрадь Kutools for Excel значительно упрощает объединение нескольких книг в одну. Давайте посмотрим, как заставить эту функцию работать при объединении нескольких книг.

1. Создайте новую книгу и щелкните Кутулс Плюс > Сочетать. Затем появится диалоговое окно с напоминанием о том, что все объединенные книги должны быть сохранены, а функция не может быть применена к защищенным книгам, нажмите кнопку OK кнопку.

2. в Комбинировать листы мастер, выберите Объедините несколько листов из книг в одну книгу вариант, а затем щелкните Download кнопка. Смотрите скриншот:

3. в Объединить рабочие листы — шаг 2 из 3 диалогового окна, нажмите Добавить > Файл or Папка чтобы добавить файлы Excel, которые вы объедините в один. После добавления файлов Excel щелкните значок Завершить и выберите папку для сохранения основной книги. Смотрите скриншот:

Теперь все книги объединены в одну.

По сравнению с двумя вышеуказанными методами, Kutools for Excel имеет следующие преимущества:

  • 1) Все книги и рабочие листы перечислены в диалоговом окне;
  • 2) Для листов, которые вы хотите исключить из объединения, просто снимите флажок;
  • 3) Пустые рабочие листы исключаются автоматически;
  • 4) Исходное имя файла будет добавлено в качестве префикса к имени листа после объединения;
  • Чтобы узнать о дополнительных функциях этой функции, пожалуйста, посетите здесь.

  Если вы хотите получить бесплатную пробную версию (30-день) этой утилиты, пожалуйста, нажмите, чтобы загрузить это, а затем перейдите к применению операции в соответствии с указанными выше шагами.


Kutools for Excel — Помогает всегда закончить работу раньше времени, чтобы у вас было больше времени, чтобы наслаждаться жизнью

Вы часто играете в догонялки с работой, не хватает времени на себя и семью?  Kutools for Excel может помочь вам справиться с 80% Совершенствуйте головоломки и повысьте эффективность работы на 80%, дайте вам больше времени, чтобы заботиться о семье и наслаждаться жизнью.

300 расширенных инструментов для 1500 рабочих сценариев сделают вашу работу намного проще, чем когда-либо.
Больше не нужно запоминать формулы и коды VBA, теперь дайте вашему мозгу отдохнуть.
Сложные и повторяющиеся операции могут быть выполнены разовой обработкой за секунды.
Сократите количество операций с клавиатурой и мышью каждый день, попрощайтесь с профессиональными заболеваниями прямо сейчас.
Станьте экспертом по Excel за 3 минуты, это поможет вам быстро получить признание и продвижение по службе.
110,000 300 высокоэффективных людей и выбор XNUMX+ всемирно известных компаний.
Сделайте так, чтобы ваши 39.0 доллара были больше, чем обучение других людей.
Полнофункциональная бесплатная пробная версия 30-день. 60-дневная гарантия возврата денег без объяснения причин.

Понравилась статья? Поделить с друзьями:
  • Слияние значений двух ячеек в excel
  • Слияние документов создание писем в word
  • Слияние документов в текстовом редакторе word
  • Слияние документов в редакторе word это
  • Слияние документов в word что это