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.

Leave a Comment

Sådan slår du undertekster til på Zoom

Sådan slår du undertekster til på Zoom

Lær hvordan du slår undertekster til på Zoom. Zooms automatiske undertekster gør det lettere at forstå opkaldsindholdet.

[100% løst] Hvordan rettes meddelelsen Fejludskrivning på Windows 10?

[100% løst] Hvordan rettes meddelelsen Fejludskrivning på Windows 10?

Modtager fejludskrivningsmeddelelse på dit Windows 10-system, følg derefter rettelserne i artiklen og få din printer på sporet...

Sådan optages og afspilles en Microsoft Teams-optagelse

Sådan optages og afspilles en Microsoft Teams-optagelse

Du kan nemt besøge dine møder igen, hvis du optager dem. Sådan optager og afspiller du en Microsoft Teams-optagelse til dit næste møde.

Sådan nulstiller du standardapps på Android

Sådan nulstiller du standardapps på Android

Når du åbner en fil eller klikker på et link, vil din Android-enhed vælge en standardapp til at åbne den. Du kan nulstille dine standardapps på Android med denne vejledning.

RETTET: Entitlement.diagnostics.office.com certifikatfejl

RETTET: Entitlement.diagnostics.office.com certifikatfejl

RETTET: Entitlement.diagnostics.office.com certifikatfejl

Top 10 spilwebsteder, der ikke er blokeret af skolen i 2022

Top 10 spilwebsteder, der ikke er blokeret af skolen i 2022

For at finde ud af de bedste spilsider, der ikke er blokeret af skoler, skal du læse artiklen og vælge den bedste ikke-blokerede spilwebsted for skoler, gymnasier og værker

RETTET: Printer i fejltilstand [HP, Canon, Epson, Zebra & Brother]

RETTET: Printer i fejltilstand [HP, Canon, Epson, Zebra & Brother]

Hvis du står over for printeren i fejltilstandsproblemet på Windows 10-pc og ikke ved, hvordan du skal håndtere det, så følg disse løsninger for at løse det.

Sådan sikkerhedskopierer du din Chromebook (2022)

Sådan sikkerhedskopierer du din Chromebook (2022)

Hvis du undrede dig over, hvordan du sikkerhedskopierer din Chromebook, har vi dækket dig. Lær mere om, hvad der sikkerhedskopieres automatisk, og hvad der ikke er her

Sådan rettes Xbox-appen vil ikke åbne i Windows 10 [HURTIG GUIDE]

Sådan rettes Xbox-appen vil ikke åbne i Windows 10 [HURTIG GUIDE]

Vil du rette Xbox-appen vil ikke åbne i Windows 10, så følg rettelserne som Aktiver Xbox-appen fra Tjenester, nulstil Xbox-appen, Nulstil Xbox-apppakken og andre..

Hvad er LogiOptions.exe (UNICODE), og er processen sikker?

Hvad er LogiOptions.exe (UNICODE), og er processen sikker?

Hvis du har et Logitech-tastatur og -mus, vil du se denne proces køre. Det er ikke malware, men det er ikke en vigtig eksekverbar fil til Windows OS.