Jak ve Wordu přeházet odstavce?
Napsal: 05 led 2020 23:25
Potřebuji ve Wordu přeházet odstavce podle náhodného klíče.
Uvedeným kódem dokážu přehodit odstavec na požadované místo takto:
- Načtu odstavec
- Vytvořím mezeru na nové pozici
- Vložím do mezery odstavec
- Odstavcem na původním místě smažu
Tu novou pozici vypočítám pomocí „Rnd“ a odstavec přesunu, jenže tím se změní celkové pořadí, a tak musím provést nový výpočet, a u toho si pamatovat, které odstavce jsou již přesunuté, a tak dokola. Uměl bych to naprogramovat, ale je to složité.
Takže hledám nějaký jiný způsob, třeba ty odstavce načíst do polí, nebo jinak. Má někdo nápad?
Uvedeným kódem dokážu přehodit odstavec na požadované místo takto:
- Načtu odstavec
- Vytvořím mezeru na nové pozici
- Vložím do mezery odstavec
- Odstavcem na původním místě smažu
Tu novou pozici vypočítám pomocí „Rnd“ a odstavec přesunu, jenže tím se změní celkové pořadí, a tak musím provést nový výpočet, a u toho si pamatovat, které odstavce jsou již přesunuté, a tak dokola. Uměl bych to naprogramovat, ale je to složité.
Takže hledám nějaký jiný způsob, třeba ty odstavce načíst do polí, nebo jinak. Má někdo nápad?
Kód: Vybrat vše
pozice = 2
nova_pozice = 4
Set odstavec = ActiveDocument.Paragraphs(pozice).Range 'načíst odstavec
Set mezera = ActiveDocument.Paragraphs.Add(ActiveDocument.Paragraphs(nova_pozice).Range) 'vytvořit mezeru
mezera.Range.Text = odstavec.Text 'do mezery ten odstavec vložit
odstavec.Delete 'odstavec na původním místě smazat