Paar päeva tagasi küsis lugeja, kas on võimalik automatiseerida PowerPointi esitluste loomist nullist ja seejärel lisada olemasolevale esitlusele kiiresti slaidid. Arvan, et see skript võib olla kõige kasulikumate PowerPointi makrode loendis.
Nagu me varem märkisime, ei sisalda PowerPoint makrosalvestit (see on erinevalt Excelist ja Wordist, millel mõlemal on makro jaoks sisseehitatud salvestid). Seetõttu on meile jäänud vana hea Visual Basic for Application, mida saame kasutada lihtsate makrode loomiseks PowerPointi automatiseerimiseks. PowerPointi automatiseerimisele on ka teisi alternatiive, kuid need jäävad selle õpetuse raamest kaugemale.
Tänases lühikeses õpetuses käsitleme kolme erinevat kasutusjuhtumit.
- Uue esitluse loomine (tühi või malli abil)
- Lisage olemasolevale esitlusele slaidid.
- Kahe ülalmainitud juhtumi segu (loomine nullist ja slaidide lisamine)
Alustame.
Vaata linti. Kui te ei näe menüüs kirjet Arendaja, peate enne kodeerimise alustamist lubama arendaja vahekaardi.
Kui olete Arendaja menüü oma lindil nähtavaks teinud , vajutage nuppu Arendaja , seejärel vajutage Visual Basicu nuppu (või lihtsalt vajutage Alt+F11), et avada Visual Basic IDE.
VBA PowerPointi esitluse loomiseks
- Paremklõpsake VB-redaktoris VBAProject ja klõpsake nuppu Lisa .
- Valige Moodul .
- Kleepige järgmine kood vastloodud moodulisse.
Sub CreatePresentation()
Dim NewPres as Presentation
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
End Sub
- Klõpsake nuppu Fail ja seejärel Salvesta.
- Koodi käivitamiseks klõpsake nuppu Käivita ja seejärel valige Käivita alam-/kasutajavorm (või lihtsalt F5).
- Sulgege VB redaktor.
VBA slaidide sisestamiseks
- Paremklõpsake VB-redaktoris VBAProject ja klõpsake nuppu Lisa.
- Valige Moodul
- Kleepige järgmine kood vastloodud moodulisse.
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
- Klõpsake nuppu Fail ja seejärel Salvesta.
- Koodi käivitamiseks klõpsake nuppu Käivita ja seejärel valige Käivita alam-/kasutajavorm (või lihtsalt F5).
- Sulgege VB redaktor.
Makro uue esitluse seadistamiseks ja slaidide lisamiseks
See oleks lihtsalt kahe ülaltoodud jupi segamine.
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
Järgmisena võiksite tutvuda meie õpetusega PowerPointis VBA abil programmilise kujundite loomise kohta
Genereerige Excelist PowerPointi esitlus
Viimane juhtum on see, et soovite luua PowerPointi esitluse otse Exceli tabelist. Saate kasutada sama tehnikat Wordis ja teistes Microsoft 365 rakendustes.
- Linkige arvutustabel PowerPointi andmemudeliga (alates Tööriistad>>Viited)
- Sisestage nupp oma Exceli arvutustabelisse (Arendaja >> Sisesta ja seejärel valige käsunupp).
- Sisestage allolev VBA kood oma arvutustabeli VBA projekti (otse lehele või VBA moodulisse)
- Muutke skripti vastavalt vajadusele.
- Jookse (vajutage F5) ja testige tulemust.
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
Nautige 🙂