У цій статті ми раді поділитися з вами двома способами швидкого об’єднання кількох документів Word в один за допомогою VBA.
У програмі Word є вбудована функція за замовчуванням, яка допомагає користувачеві об’єднати або об’єднати кілька документів в один. Деталі пояснюються в цій статті: Як об’єднати та об’єднати кілька документів Word в один
За допомогою цього методу вам потрібно зробити пару клацань, і вміст наступного документа завжди надходить відразу після попереднього. Тому ми хочемо запропонувати вам більш швидкі способи зробити це.
Спосіб 1: Об’єднайте вибрані документи в один
- Перш за все, створіть новий порожній документ.
- Запустіть редактор VBA у програмі Word, натиснувши “Alt + F11”.
- Далі натисніть “Звичайний”.
- Потім натисніть «Вставити».
- І виберіть «Модуль».
- Двічі клацніть на новий модуль, щоб відкрити простір для редагування.
- Вставте туди такий макрос:
Sub MergeMultiDocsIntoOne()
Dim dlgFile As FileDialog
Dim nTotalFiles As Integer
Dim nEachSelectedFile As Integer
Set dlgFile = Application.FileDialog(msoFileDialogFilePicker)
With dlgFile
.AllowMultiSelect = True
If .Show <> -1 Then
Exit Sub
Else
nTotalFiles = .SelectedItems.Count
End If
End With
For nEachSelectedFile = 1 To nTotalFiles
Selection.InsertFile dlgFile.SelectedItems.Item(nEachSelectedFile)
If nEachSelectedFile < nTotalFiles Then
Selection.InsertBreak Type:=wdPageBreak
Else
If nEachSelectedFile = nTotalFiles Then
Exit Sub
End If
End If
Next nEachSelectedFile
End Sub
- Далі натисніть «Виконати» або натисніть «F5».
- Тепер у вікні "Огляд" виберіть кілька файлів, натиснувши "Ctrl" і натисніть "OK".
- Потім весь вміст вибраних файлів буде об'єднано в новому документі, причому тексти кожного документа починатимуться з нової сторінки.
Примітка:
Як ми вже згадували, цей макрос розміщує тексти кожного документа на новій сторінці. Але якщо вам потрібно, щоб вони були один за одним, ви можете змінити деякі рядки коду в макросі. Просто знайдіть рядок “If nEachSelectedFile <nTotalFiles Then”, видаліть його та наступні шість рядків.
Спосіб 2. Об’єднання всіх документів у папці в один
Якщо у вас є папка з файлами, які потрібно об’єднати, цей макрос буде чудово працювати.
- Для початку встановіть та запустіть макрос, як описано в методі 1.
- Потім замініть макрос таким:
Sub MergeFilesInAFolderIntoOneDoc()
Dim dlgFile As FileDialog
Dim objDoc As Document, objNewDoc As Document
Dim StrFolder As String, strFile As String
Set dlgFile = Application.FileDialog(msoFileDialogFolderPicker)
With dlgFile
If .Show = -1 Then
StrFolder = .SelectedItems(1) & "\"
Else
MsgBox ("No folder is selected!")
Exit Sub
End If
End With
strFile = Dir(StrFolder & "*.docx", vbNormal)
Set objNewDoc = Documents.Add
While strFile <> ""
Set objDoc = Documents.Open(FileName:=StrFolder & strFile)
objDoc.Range.Copy
objNewDoc.Activate
With Selection
.Paste
.InsertBreak Type:=wdPageBreak
.Collapse wdCollapseEnd
End With
objDoc.Close SaveChanges:=wdDoNotSaveChanges
strFile = Dir()
Wend
objNewDoc.Activate
Selection.EndKey Unit:=wdStory
Selection.Delete
End Sub
- Запустіть макрос, натиснувши “Виконати”.
- Далі ви бачите відкритим вікно "Огляд". Виберіть папку, де ви зберігаєте всі документи. І натисніть “OK”.
Аналогічно, тексти кожного документа починаються на новій сторінці. Щоб вони злипалися один за одним, знайдіть та видаліть рядок коду «.InsertBreak Type:=wdPageBreak».
Захистіть свій документ Word належним чином
Один із найкращих способів захистити документи Word - це регулярне їх резервне копіювання. З резервними копіями в руках вам ніколи не доведеться боятися втрати даних. Крім того, доцільно також придбати інструмент ремонт docx якщо хтось із них буде пошкоджений.
Вступ автора:
Віра Чень є експертом з відновлення даних у DataNumen, Inc., яка є світовим лідером у галузі технологій відновлення даних, в тому числі пошкоджений Excel та pdf ремонт програмних продуктів. Для отримання додаткової інформації відвідайте WWW.datanumen.com


