Hvordan opretter og tilføjer man slides til PowerPoint-præsentationer med VBA?

For et par dage siden spurgte en læser om, at der er en måde at automatisere oprettelsen af ​​PowerPoint-præsentationer fra bunden og derefter hurtigt tilføje dias til den eksisterende præsentation. Jeg mente, at det script måske er højt på listen over de mest nyttige PowerPoint-makroer. 

Som vi tidligere har angivet, inkluderer PowerPoint ikke en makrooptager (det er i modsætning til Excel og Word, som begge har indbyggede optagere til makro). Derfor står vi tilbage med gode gamle Visual Basic for Application, som vi kan bruge til at lave simple makroer til at automatisere PowerPoint. Der er yderligere alternativer til PowerPoint Automation, men de går ud over denne tutorials omfang.

I dagens korte selvstudie vil vi gennemgå tre forskellige brugssager:

  1. Ny præsentationsoprettelse (tom eller ved hjælp af en skabelon)
  2. Føj dias til en eksisterende præsentation.
  3. En blanding af de to ovennævnte sager (Opret fra bunden og tilføjelse af dias)

Lad os komme igang.

Se på båndet. Hvis du ikke kan se en Udvikler-indgang i menuen, før du starter din kodning, skal du aktivere udviklerfanen.

Når du har gjort Udviklermenuen synlig på dit bånd, skal du gå videre og trykke på Udvikler og derefter trykke på Visual Basic- knappen (eller blot gå videre og trykke på Alt+F11) for at åbne Visual Basic IDE.

VBA til oprettelse af PowerPoint-præsentation

  1. I VB Editor skal du højreklikke på VBAProject og trykke på Indsæt .
  2. Vælg modul .
  3. Indsæt følgende kode i det nyoprettede modul.
Sub CreatePresentation()
Dim NewPres as Presentation
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
End Sub
  1. Tryk på Fil og derefter Gem.
  2. For at køre din kode skal du trykke på Kør og derefter vælge Kør under-/brugerformular (eller blot F5).
  3. Luk VB-editoren.

VBA for at indsætte dias

  1. I VB Editor skal du højreklikke på VBAProject og trykke på Indsæt.
  2. Vælg Modul
  3. Indsæt følgende kode i det nyoprettede modul.
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
  1. Tryk på Fil og derefter Gem.
  2. For at køre din kode skal du trykke på Kør og derefter vælge Kør under-/brugerformular (eller blot F5).
  3. Luk VB-editoren.

Makro for at opsætte en ny præsentation og tilføje dias

Det ville bare være at blande de to uddrag, der er skitseret ovenfor.

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

Dernæst kan du se på vores tutorial om programmatisk at skabe figurer i PowerPoint med VBA

Generer en PowerPoint-præsentation fra Excel

Sidste tilfælde er, at du gerne vil lave en PowerPoint-præsentation direkte fra et Excel-regneark. Du kan anvende den samme teknik fra Word og andre Microsoft 365-applikationer.

  • Link regnearket til PowerPoint-datamodellen (fra Værktøjer >> Referencer)
  • Indsæt en knap i dit Excel-regneark (Udvikler >> Indsæt, og vælg derefter en kommandoknap).
  • Indsæt VBA-koden nedenfor i dit regneark VBA-projekt (direkte i arket eller i et VBA-modul)
  • Rediger scriptet efter behov.
  • Kør (tryk F5) og test resultatet.
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

God fornøjelse 🙂

Fordele ved Excel VBA PowerPoint

  • Brug af VBA i Powerpoint gør det nemt at håndtere, hvis en ppt-fil har så mange slides med stort indhold.
  • VBA med Powerpoint giver et strejf af automatisering selv med begrænsede funktioner tilgængelige.

Ulemper ved Excel VBA PowerPoint

  • Vi skal vælge Microsoft PowerPoint 15.0-objektbiblioteket fra Reference-indstillingen i menupunktet Værktøj, som vi skal bruge i starten af eksempel-1, hver gang vi kører koden til PowerPoint.

Ting at huske

  • Gem filen i Macro-Enable Presentation-formatet, når du har skrevet koden. Dette vil hjælpe os med at undgå at miste koden og bruge den samme flere gange i fremtiden.
  • Omkodningsfunktionen fungerer ikke her, da vi skal hoppe fra Excel til PowerPoint for at ændre grænsefladen mellem siderne.
  • Kompilér altid koden, før du kører. Dette vil hjælpe dig med at finde fejlen i koden. Dette er ret nyttigt, når vi skriver store linjer kode.
  • For at køre og implementere koden skal vi åbne excel-arket med diagram, som vi vil indsætte det i PowerPoint-dias.
  • Vi kan justere diagrammet i PowerPoint efter vores behov.

Efterlad en kommentar

PowerPoint-skabelon til årsrapport for nonprofitorganisationer: Gratis downloadmuligheder og tjekliste for slides

PowerPoint-skabelon til årsrapport for nonprofitorganisationer: Gratis downloadmuligheder og tjekliste for slides

Lav en klar årsrapport for nonprofitorganisationer i PowerPoint med en gratis skabelon, praktisk slidestruktur, effektmålinger, økonomiske oplysninger og præsentationstips klar til donorer.

PowerPoint-skabelon til minimalistisk investor-pitch til tech-startups: Hvad skal inkluderes, og hvad skal udelades

PowerPoint-skabelon til minimalistisk investor-pitch til tech-startups: Hvad skal inkluderes, og hvad skal udelades

Byg en pitch deck for investorer i clean tech-startups i PowerPoint med praktisk slidestruktur, evidensorienteret budskaber, tilgængeligt design og færre distraktioner.

Simpel skabelon til opgavedelegeringsmatrix til Word: En praktisk version til små teamledere

Simpel skabelon til opgavedelegeringsmatrix til Word: En praktisk version til små teamledere

Brug denne enkle skabelon til opgavedelegeringsmatrix i Word til at tildele ejere, beslutningsgrænser, deadlines og kontrolpunkter uden at komplicere et lille team for meget.

Simple Daycare Attendance Sheet Template: Printable Sign-In and Sign-Out for Home Childcare

Simple Daycare Attendance Sheet Template: Printable Sign-In and Sign-Out for Home Childcare

Use this simple printable daycare attendance sheet for home childcare, with child names, arrival/departure times, signatures, and compliance tips.

Printbar skabelon til marketingstrategi på én side til lokale virksomheder

Printbar skabelon til marketingstrategi på én side til lokale virksomheder

Brug denne skabelon til en marketingstrategi på én side, der kan udskrives, til at definere din lokale målgruppe, dit tilbud, dine kanaler, dit budget, dine ugentlige handlinger og dine målbare mål.

Sådan forhindrer du Excel i automatisk at ændre tal til datoer

Sådan forhindrer du Excel i automatisk at ændre tal til datoer

Stop Excel i at konvertere værdier som 1/2, 11-53 eller JAN1 til datoer. Lær pålidelige løsninger til indtastning, indsættelse, CSV-import og allerede konverterede celler.

PowerPoint-skabelon til moderne ejendomsannoncer (gratis): Hvad skal inkluderes

PowerPoint-skabelon til moderne ejendomsannoncer (gratis): Hvad skal inkluderes

Lav en elegant PowerPoint-opslagsliste til ejendomme gratis med en praktisk slideplan, foto, branding, tilgængelighed, overholdelse af regler og eksporttips.

Sådan løser du Outlook-fejlen: Kan ikke sende e-mail, men kan modtage

Sådan løser du Outlook-fejlen: Kan ikke sende e-mail, men kan modtage

Løs Outlook-problemer, hvor du kan modtage e-mail, men ikke sende. Tjek Udbakken, offline-tilstand, login, SMTP-indstillinger, profiler og ændringer i Microsoft 365.

Enkel to-ugers løntracker Excel-skabelon til små teams: En praktisk opsætningsguide

Enkel to-ugers løntracker Excel-skabelon til små teams: En praktisk opsætningsguide

Byg en enkel to-ugers løntracker i Excel til et lille team, med timer, løn, fradrag, review-flag, opsummeringer og vejledning i dokumentation.

Udskrivbar tjekliste til eventplanlægning og budgetskabelon til Word: Hvad skal inkluderes, og hvornår skal man bruge Excel i stedet

Udskrivbar tjekliste til eventplanlægning og budgetskabelon til Word: Hvad skal inkluderes, og hvornår skal man bruge Excel i stedet

Byg eller tilpas en printbar tjekliste og budgetskabelon til eventplanlægning i Microsoft Word med praktiske afsnit, afvejninger og tips til Word vs. Excel.