V tomto článku se s vámi rádi podělíme o 2 způsoby, jak rychle sloučit více dokumentů Wordu do jednoho prostřednictvím VBA.
Ve Wordu je výchozí vestavěná funkce, která pomáhá uživateli kombinovat nebo sloučit několik dokumentů do jednoho. Podrobnosti jsou vysvětleny v tomto článku: Jak kombinovat a sloučit více dokumentů Word do jednoho
Při této metodě musíte udělat pár kliknutí a obsah dalšího dokumentu vždy následuje hned po tom předchozím. Proto vám chceme nabídnout rychlejší způsoby, jak toho dosáhnout.
Metoda 1: Sloučit vybrané dokumenty do jednoho
- V první řadě si vytvořte nový prázdný dokument.
- Spusťte editor VBA ve Wordu stisknutím „Alt+ F11“.
- Dále klikněte na „Normální“.
- Poté klikněte na „Vložit“.
- A zvolte „Modul“.
- Dvojitým kliknutím na nový modul otevřete prostor pro úpravy.
- Vložte tam následující makro:
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
- Dále klikněte na „Spustit“ nebo stiskněte „F5“.
- Nyní v okně „Procházet“ vyberte více souborů stisknutím „Ctrl“ a klikněte na „OK“.
- Poté bude veškerý obsah vybraných souborů spojen do nového dokumentu, přičemž texty jednotlivých dokumentů budou začínat na nové stránce.
Poznámka:
Jak jsme zmínili, toto makro umístí texty každého dokumentu na novou stránku. Pokud však potřebujete, aby byly jeden po druhém, můžete v makru změnit některé řádky kódu. Stačí najít řádek „If nEachSelectedFile < nTotalFiles Then“, smazat jej a dalších šest řádků.
Metoda 2: Sloučit všechny dokumenty ve složce do jednoho
V případě, že máte složku souborů ke spojení, pak toto makro bude fungovat skvěle.
- Pro začátek nainstalujte a spusťte makro, jak je popsáno v metodě 1.
- Poté nahraďte makro tímto:
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
- Spusťte makro kliknutím na „Spustit“.
- Dále uvidíte otevřené okno „Procházet“. Vyberte složku, kam ukládáte všechny dokumenty. A klikněte na „OK“.
Podobně texty každého dokumentu začínají na nové stránce. Chcete-li, aby se slepily jeden po druhém, najděte a smažte řádek kódu „.InsertBreak Type:=wdPageBreak“.
Chraňte svůj dokument Word správně
Jedním z nejlepších způsobů, jak chránit své dokumenty Word, je pravidelné zálohování. Se zálohami v ruce se už nikdy nebudete muset bát ztráty dat. Kromě toho je také vhodné získat nástroj opravit docx pokud dojde k poškození některého z nich.
Úvod autora:
Vera Chen je expertka na obnovu dat DataNumen, Inc., která je světovým lídrem v oblasti technologií pro obnovu dat, včetně poškozený Excel a pdf opravy softwarových produktů. Pro více informací navštivte www.datanumen.com


