Джой столкнулась с проблемой слияния нескольких книг вместе. Большинство книг — около 200 из них, все в одной папке — содержат по одному листу, но некоторые содержат больше. Рабочие листы, образующие каждую из этих книг, необходимо добавить в одну книгу.

Самый простой способ выполнить слияние такого масштаба — особенно если вам приходится делать это часто — с помощью макроса. Следующий макрос отображает диалоговое окно с просьбой выбрать файлы для объединения. (Вы можете выбрать несколько книг, удерживая нажатой клавишу Ctrl при щелчке каждой из них.) Он проходит через выбранный вами список, открывая каждую и перемещая все ее рабочие листы в конец книги с кодом.

Sub CombineWorkbooks()

Dim FilesToOpen     Dim x As Integer

On Error GoTo ErrHandler     Application.ScreenUpdating = False

FilesToOpen = Application.GetOpenFilename _       (FileFilter:="Microsoft Excel Files (.xls?), .xls?", _       MultiSelect:=True, Title:="Files to Merge")



If TypeName(FilesToOpen) = "Boolean" Then         MsgBox "No Files were selected"

GoTo ExitHandler     End If

x = 1     While x <= UBound(FilesToOpen)

Workbooks.Open FileName:=FilesToOpen(x)

Sheets().Move After:=ThisWorkbook.Sheets _           (ThisWorkbook.Sheets.Count)

x = x + 1     Wend

ExitHandler:

Application.ScreenUpdating = True     Exit Sub

ErrHandler:

MsgBox Err.Description     Resume ExitHandler End Sub

В процессе добавления рабочих листов в конец книги Excel автоматически добавит (2), (3) и т. Д. При обнаружении повторяющихся имен рабочих листов. Все формулы в книге, относящиеся к другим листам, также будут обновлены, чтобы отразить новые имена.

_Примечание: _

Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.

link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (12652) применим к Microsoft Excel 2007, 2010, 2013, 2016, 2019 и Excel в Office 365. Вы можете найти версию этого совета для старого интерфейса меню Excel здесь:

link: / excel-Merging_Many_Workbooks [Объединение множества книг].