Pred pár dňami sa čitateľ spýtal, že existuje spôsob, ako zautomatizovať vytváranie prezentácií PowerPoint od začiatku a potom rýchlo pridať snímky do existujúcej prezentácie. Myslím si, že tento skript by mohol byť vysoko v zozname najužitočnejších PowerPointových makier.
Ako sme už uviedli v minulosti, PowerPoint neobsahuje záznam makier (to je na rozdiel od Excelu a Wordu, ktoré majú oba vstavané záznamníky pre makro). Preto nám zostal starý dobrý Visual Basic for Application, ktorý môžeme použiť na vytváranie jednoduchých makier na automatizáciu PowerPointu. Existujú ďalšie alternatívy pre automatizáciu PowerPoint, ale tie presahujú rámec tohto návodu.
V dnešnom krátkom návode si prejdeme tri rôzne prípady použitia:
- Vytvorenie novej prezentácie (prázdna alebo pomocou šablóny)
- Pridajte snímky do existujúcej prezentácie.
- Kombinácia dvoch vyššie uvedených prípadov (Vytvoriť od začiatku a pridať snímky)
Začnime.
Pozrite sa na Stuhu. Ak v ponuke nevidíte položku Vývojár, pred spustením kódovania budete musieť povoliť kartu vývojára.
Keď zviditeľníte ponuku Vývojár na páse s nástrojmi, pokračujte a stlačte Vývojár , potom stlačte tlačidlo Visual Basic (alebo jednoducho pokračujte a stlačte Alt+F11), čím otvoríte Visual Basic IDE.
VBA na vytvorenie prezentácie v PowerPointe
- V editore VB kliknite pravým tlačidlom myši na VBAProject a stlačte Vložiť .
- Vyberte položku Modul .
- Vložte nasledujúci kód do novovytvoreného modulu.
Sub CreatePresentation()
Dim NewPres as Presentation
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
End Sub
- Kliknite na Súbor a potom na Uložiť.
- Ak chcete spustiť kód, stlačte Spustiť a potom vyberte Spustiť pod/užívateľský formulár (alebo jednoducho F5).
- Zatvorte editor VB.
VBA na vkladanie snímok
- V editore VB kliknite pravým tlačidlom myši na VBAProject a stlačte Vložiť.
- Vyberte položku Modul
- Vložte nasledujúci kód do novovytvoreného modulu.
Sub CreateSlide()
Dim NewSlide as Slide
'This statement ads a title slide
Set NewSlide = ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)
'This statement adds a blank slide in the second place
Set NewSlide = ActivePresentation.Slides.Add(Index:=2, Layout:=ppLayoutBlank)
End Sub
- Kliknite na Súbor a potom na Uložiť.
- Ak chcete spustiť kód, stlačte Spustiť a potom vyberte Spustiť pod/užívateľský formulár (alebo jednoducho F5).
- Zatvorte editor VB.
Makro na nastavenie novej prezentácie a pridanie snímok
To by bolo len zmiešanie dvoch úryvkov uvedených vyššie.
Sub CreatePres_AddSlides()
Dim NewPres as Presentation
Dim NewSlide as Slide
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
' Title Slide
Set NewSlide = ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)
'This statement adds a blank slide in the second place
Set NewSlide = ActivePresentation.Slides.Add(Index:=2, Layout:=ppLayoutBlank)
'Save the new PowerPoint file
NewPres.SaveAs("MyPresentation.pptx")
End Sub
Ďalej si môžete pozrieť náš návod na programové vytváranie tvarov v PowerPointe s VBA
Vytvorte prezentáciu programu PowerPoint z Excelu
Posledným prípadom je, že by ste chceli vytvoriť prezentáciu programu PowerPoint priamo z tabuľky programu Excel. Rovnakú techniku môžete použiť z Wordu a iných aplikácií Microsoft 365.
- Prepojte tabuľku s dátovým modelom programu PowerPoint (z Nástroje>>Odkazy)
- Vložte tlačidlo do tabuľky programu Excel (Vývojár >> Vložiť a potom vyberte príkazové tlačidlo).
- Vložte nižšie uvedený kód VBA do svojho tabuľkového VBA projektu (priamo do hárku alebo do modulu VBA)
- Upravte skript podľa potreby.
- Spustite (stlačte F5) a otestujte výsledok.
Sub CreatePresentationFromExcel()
Dim MyPPt As PowerPoint.Application
Dim NewPres As PowerPoint.Presentation
Dim NewSlide As Slide
Set MyPPt = CreateObject("PowerPoint.Application")
Set NewPres = MyPPt.Presentations.Add
Set NewSlide = MyPPt.ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)
NewPres.SaveAs ("MyPresentation.pptx")
NewPres.Close
MyPPt.Quit
MsgBox ("Presentation saved")
End Sub
Užite si 🙂
Výhody programu Excel VBA PowerPoint
- Používanie VBA v Powerpointe uľahčuje manipuláciu, ak súbor ppt obsahuje toľko snímok s obrovským obsahom.
- VBA s Powerpointom dáva nádych automatizácie aj s obmedzenými dostupnými funkciami.
Nevýhody programu Excel VBA PowerPoint
- Musíme vybrať Microsoft PowerPoint 15.0 Object Library z možnosti Referencie v ponuke Nástroj, ktorú potrebujeme na začiatku príklad-1, zakaždým, keď spustíme kód pre PowerPoint.
Veci na zapamätanie
- Po napísaní kódu uložte súbor vo formáte Macro-Enable Presentation. Pomôže nám to predísť strate kódu a opakovanému použitiu rovnakého kódu v budúcnosti.
- Funkcia prekódovania tu nebude fungovať, pretože musíme prejsť z Excelu do PowerPointu a zmeniť rozhranie medzi stránkami.
- Pred spustením vždy skompilujte kód. To vám pomôže nájsť chybu v kóde. To je celkom užitočné, keď píšeme veľké riadky kódu.
- Ak chcete spustiť a implementovať kód, musíme otvoriť hárok programu Excel s grafom, ktorý chceme prilepiť na snímku programu PowerPoint.
- Môžeme zarovnať graf v PowerPointe podľa našich potrieb.