01.05.2016, Vladimír Klaus, navštíveno 20055x

MS Office
MS Word
Visual Basic

Pokud potřebujete spojit více dokumentů, lze to udělat z pásu karet poněkud skrytou funkcí. Přepněte se na kartu Vložení a v části Text zvolte Objekt > "Text ze souboru...". Vyberete více dokumentů a je to. Za jednoduchost se ale platí tím, že nemůže zvolit pořadí dokumentů, v jakém se poskládají.

MS Word - rychlé spojení více dokumentů, 1

Pokud tedy potřebujete spojení trochu řídit, můžete si napsat i jednoduché makro. Před jeho spuštěním si vytvořte textový soubor a do něj vložte celé cesty k dokumentům. Pomocí středníku můžete soubor ze slučování vyřadit. Pozor, soubor by měl být v kódování Windows-1250, jinak by čeština v názvech souborů nemusela být správně interpretovatelná.

d:\Temp\ObecnyEShop01.docx
d:\Temp\Smlouva2015.docx
;d:\Domeny.docx

Vlastní makro pak bude vypadat takto.

Sub SpojeniSouboru()
  Open "d:\seznam.txt" For Input As #128
  Documents.Add
  Do While Not EOF(128)
    Line Input #128, Jmeno$
    If (InStr(Jmeno$, ";") = 0) Then
      Application.StatusBar = Jmeno$
      Selection.InsertFile FileName:=Jmeno$, Range:="", _
                           ConfirmConversions:=False, _
                           Link:=False, Attachment:=False
      Selection.TypeParagraph
    End If
  Loop
  ActiveDocument.SaveAs ("d:\SpojeneDokumenty.docx")
  ActiveDocument.Close (wdDoNotSaveChanges)
  Close #128
  MsgBox ("Soubory spojeny")
End Sub

Dříve jsem používal i metodu, která nyní nefunguje, a to takovou, že jsem založil prázdný dokument a na něj jsem přetáhnul dokumenty, které jsem potřeboval sloučit. Bylo to velmi praktické, bohužel nyní se tyto dokumenty vloží jako objekty.