Sub Hierarchie() ThisDocument.Range(0, 9).Select 'Range je zde metoda objektu Document umožňující vybrat určitý počet znaků ThisDocument.Sections(1).Range.Select 'Textové objekty nižšího řádu než Document mají vlastnost Range, která vrací objekt Range. 'Objekt Range je definován jako souvislá část textu ThisDocument.Sections(1).Range.Paragraphs(1).Range.Sentences(1).Words(1).Characters(1).Bold = wdToggle ThisDocument.Characters(2).Italic = wdToggle 'wdToggle je hodnota závislá na předchozí hodnotě. Například to, co bylo dřív tučně, při dalším spuštění makra není tučně a naopak. End Sub Sub PišZaOdstavec() ActiveDocument.Paragraphs(2).Range.Select Selection.Collapse direction:=wdCollapseEnd 'Selection.Move unit:=wdCharacter, Count:=-1 Selection.TypeText "ttt6" End Sub Sub FormátujAPiš() 'ThisDocument.Paragraphs(1).Range.Bold = wdToggle Selection.Expand (wdWord) 'Vybere slovo, na kterém je kurzor. Selection.Range.Bold = wdToggle Selection.Collapse Direction:=wdCollapseEnd 'ActiveDocument.Fields.Add Range:=Selection.Range, Type:=wdFieldDate Selection.TypeText ("ttt4") 'Vloží text na pozici kurzoru. Selection.TypeText Text:="ttt5" 'Vloží text na pozici kurzoru. Selection.TypeText "ttt6" 'Vloží text na pozici kurzoru. End Sub Sub Piš() 'ThisDocument.Paragraphs(2).Range.InsertAfter ("ttt1") 'Píše na začátek 3. odstavce. 'ThisDocument.Paragraphs(2).Range.InsertBefore ("ttt2") 'Píše na začátek 2. odstavce. 'ThisDocument.Paragraphs(2).Range.InsertParagraph 'Přepíše 2. odstavec prázdným odstavcem. 'ThisDocument.Paragraphs(2).Range.InsertParagraphAfter 'Vloží prázdný odstavec za 2. odstavec. 'ThisDocument.Paragraphs(2).Range.InsertParagraphBefore 'Vloží prázdný odstavec před 2. odstavec. ThisDocument.Paragraphs(2).Range.Text = ("ttt3") 'Vymaže 2. odstavec a na začátek 3. odstavce napíše text. End Sub Sub Zálohuj() 'Toto makro nesmí být v aktivním dokumnetu. With ActiveDocument If .Saved Or .Path = "" Then Exit Sub .Bookmarks.Add Name:="Aktuální_pozice" Application.ScreenUpdating = False .Save AktuálníSoubor = .FullName .SaveAs FileName:=.Path + "\záloha" End With ActiveDocument.Close Documents.Open FileName:=AktuálníSoubor Selection.GoTo what:=wdGoToBookmark, Name:="Aktuální_pozice" Application.ScreenUpdating = True End Sub Sub Nahraď() Set myRange = ActiveDocument.Content With myRange.Find .ClearFormatting .Replacement.ClearFormatting .Text = "Hello" .Replacement.Text = "Goodbye" .Execute Replace:=wdReplaceAll End With End Sub Sub NahradSpec() Const konec As String = "konec" Dim v(2) As String Dim n(2) As String v(0) = "ahoj" n(0) = "nazdar" v(1) = "ano" n(1) = "jo" v(2) = konec n(2) = konec i = 0 Do While v(i) <> konec With Selection.Find .Text = v(i) .Replacement.Text = n(i) .Wrap = wdFindContinue End With Selection.Find.Execute Replace:=wdReplaceAll i = i + 1 Loop End Sub Procházení kolekcemi objektů Sub SlovaOdstavce() 'Procházení slovy v určitém odstavci Dim slovo As Range Dim PořadíOdstavce As Integer PořadíOdstavce = InputBox("Zadej pořadí odstavce") For Each slovo In ThisDocument.Paragraphs(PořadíOdstavce).Range.Words MsgBox """" & slovo & """" If slovo.Characters(1) = vbCr Then MsgBox "nový řádek" Next slovo MsgBox ThisDocument.Paragraphs(PořadíOdstavce).Range.Words.Count End Sub Sub SlovaOdstavce() 'Procházení slovy v určitém odstavci v určitém oddílu Dim slovo As Range Dim slova As Words Dim PořadíOddílu As Integer, PořadíOdstavce As Integer PořadíOddílu = InputBox("Zadej pořadí oddílu") PořadíOdstavce = InputBox("Zadej pořadí odstavce") Set slova = ThisDocument.Sections(PořadíOddílu).Range.Paragraphs(PořadíOdstavce).Range.Words For Each slovo In slova MsgBox """" & slovo & """" If slovo.Characters(1) = vbCr Then MsgBox "nový řádek" Next slovo MsgBox slova.Count End Sub Záhlaví (Headers), Zápatí (Footers) ThisDocument.Sections(PořadíOddílu).Footers(wdHeaderFooterEvenPages).Range.Text Zjištění zda existuje objekt v podobě hodnoty True neob False ThisDocument.Sections(PořadíOddílu).Footers(wdHeaderFooterEvenPages).Exists V testu se může vyskytnout procházení i revizemi (Revision), záložkami (Bookmark), poli (Field), styly (Style).