Иногда у нас возникает необходимость объединить несколько файлов Ворд в один. На той странице мы рассмотрим два способа, как это можно сделать. Но прежде, чем приступить к объединению нескольких документов в один, убедитесь, что все документы лежат у вас в одной папке. Сделали? Тогда приступим.
Объединяем документы с помощью «Текст из файла»
Этот способ поможет вам соединить несколько файлов в один, но знайте, что при этом будет потеряно форматирование в готовом документе.
Шаг 1.
Создайте новый пустой документ: иконка «Офиса», затем «Создать».
Шаг 2.
Перейдите на вкладку «Вставка», найдите в разделе «Текст» кнопку «Объект» и нажмите на стрелочку вниз.
Шаг 3.
В диалоговом окне выберите «Текст из файла».
Шаг 4.
Выберите все файлы, которые вы желаете объединить в один.
Чтобы выбрать все сразу файлы нажмите CTRL + A. Если вы желаете выбрать несколько файлов подряд, то выделите первый из них, затем зажмите клавишу SHIFT и выберите последний — промежуточные выделяться автоматически. Если вам нужно выбрать, к примеру, все нечетные файлы, то выделяйте их левой кнопкой мыши, держа клавишу CTRL.
Шаг 5.
После того, как файлы выделены, нажмите на кнопку «Вставить», и документы отправятся в созданный вами документ.
Объединяем документы с помощью скрипта VBA
Прежде чем приступить к запуску следующего скрипта, прошу вас, проделайте эти инструкции:
- Соберите все документы, которые вы будете объединять в одну папку и пронумеруйте их в том порядке, в котором они должны быть. Например так: часть 1, часть 2 и т.д. Необходимо это сделать для того, чтобы в процессе объединения документов не был перепутан материал.
- Откройте документ с тем материалом, который будет размещен самый первым, и только после этого приступайте к запуску скрипта.
Шаг 1.
В окне Ворда нажмите на сочетание клавиш ALT + F11 для запуска Visual Basic Application.
Шаг 2.
В меню «Insert» — «Module». Теперь скопируйте код скрипта и вставьте его в окне VBA.
Шаг 3.
Запустите выполнение кода, нажав F5 на клавиатуре, либо на панели на зеленый треугольник.
VBA скрипт, чтобы объединить несколько файлов Word в один.
Sub MergeDocuments() Application.ScreenUpdating = False MyPath = ActiveDocument.Path MyName = Dir(MyPath & "\" & "*.doc") i = 0 Do While MyName <> "" If MyName <> ActiveDocument.Name Then Set wb = Documents.Open(MyPath & "\" & MyName) Selection.WholeStory Selection.Copy Windows(1).Activate Selection.EndKey Unit:=wdLine Selection.TypeParagraph Selection.Paste i = i + 1 wb.Close False End If MyName = Dir Loop Application.ScreenUpdating = True End Sub
Эти способы справедливы для разных версий Microsoft Word 2007, 2010, 2013, 2016, 2019.
Удачи в изучении. Переходите к другим урокам.
Немного юмора:
– Почему ваш антивирус так долго фильм проверяет?
– Он его смотрит.
При выборе первого варианта вставки будут ли файлы вставляться по порядку, как и расположены в файле или им нужно обязательно присвоить номера в названии?
Лучше присвоить порядковый номер, чтобы и вставлялись они в текст в том порядке, что нужно вам.
Здравствуйте, mr.Unrealist! При объединении файлов при помощи скрипта выдается ошибка «Invalid or unqualified reference» при этом выделяется часть скрипта .doc»
Здравствуйте, Игорь. Попробуйте снова. Сделал вывод кода скрипта по другому, должно работать. У меня сработал ?
А не подскажете, как сделать, что бы каждая новый документ добавлялся на отдельную страницу?
Дмитрий, к сожалению такого способа я не знаю. Что-то нужно подправить в коде VBA. А что именно, я не подскажу.
С документами где используется сложное форматирование (столбцы, рамки, картинки…), объединение с помощью скрипта происходит кривовато. Первым способ тоже не выходит.