Hvordan lage og legge til lysbilder til PowerPoint-presentasjoner med VBA?

For et par dager siden spurte en leser om det er en måte å automatisere oppretting av PowerPoint-presentasjoner fra bunnen av og deretter raskt legge til lysbilder til den eksisterende presentasjonen. Jeg trodde at skriptet kan være høyt på listen over de mest nyttige PowerPoint-makroene. 

Som vi antydet tidligere, inkluderer ikke PowerPoint en makroopptaker (det er i motsetning til Excel og Word, som begge har innebygde opptakere for makro). Derfor sitter vi igjen med gode gamle Visual Basic for Application som vi kan bruke til å lage enkle makroer for å automatisere PowerPoint. Det er flere alternativer for PowerPoint-automatisering, men de går utover omfanget av denne opplæringen.

I dagens korte veiledning vil vi gå over tre forskjellige brukstilfeller:

  1. Oppretting av ny presentasjon (tom eller ved hjelp av en mal)
  2. Legg til lysbilder til en eksisterende presentasjon.
  3. En blanding av de to ovennevnte tilfellene (Lag fra bunnen av og tillegg til lysbilder)

La oss komme i gang.

Se på båndet. Hvis du ikke ser en utvikleroppføring i menyen, må du aktivere utviklerfanen før du starter kodingen.

Etter at du har gjort Utvikler-menyen synlig på båndet ditt, fortsett og klikk på Utvikler , og trykk deretter på Visual Basic - knappen (eller bare gå videre og trykk Alt+F11) for å åpne Visual Basic IDE.

VBA for å lage PowerPoint-presentasjoner

  1. I VB Editor, høyreklikk på VBAProject og trykk Sett inn .
  2. Velg Module .
  3. Lim inn følgende kode i nyopprettingsmodulen.
Sub CreatePresentation()
Dim NewPres as Presentation
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
End Sub
  1. Trykk på Fil og deretter Lagre.
  2. For å kjøre koden din, trykk Kjør og velg Kjør Sub/User Form (eller ganske enkelt F5).
  3. Lukk VB-editoren.

VBA for å sette inn lysbilder

  1. I VB Editor, høyreklikk på VBAProject og trykk Sett inn.
  2. Velg Modul
  3. Lim inn følgende kode i nyopprettingsmodulen.
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. Trykk på Fil og deretter Lagre.
  2. For å kjøre koden din, trykk Kjør og velg Kjør Sub/User Form (eller ganske enkelt F5).
  3. Lukk VB-editoren.

Makro for å sette opp en ny presentasjon og legge til lysbilder

Det ville bare være å blande sammen de to utdragene som er skissert 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

Deretter kan du se nærmere på veiledningen vår om å programmere former i PowerPoint med VBA

Generer en PowerPoint-presentasjon fra Excel

Siste tilfelle er at du ønsker å lage en PowerPoint-presentasjon rett fra et Excel-regneark. Du kan bruke den samme teknikken fra Word og andre Microsoft 365-applikasjoner.

  • Koble regnearket til PowerPoint-datamodellen (fra Verktøy >> Referanser)
  • Sett inn en knapp i Excel-regnearket (Utvikler >> Sett inn og velg deretter en kommandoknapp).
  • Sett inn VBA-koden nedenfor i regnearkets VBA-prosjekt (direkte i arket eller i en VBA-modul)
  • Endre skriptet etter behov.
  • Kjør (trykk F5) og test utfallet.
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

Nyt 🙂

Fordeler med Excel VBA PowerPoint

  • Å bruke VBA i Powerpoint gjør det enkelt å håndtere hvis en ppt-fil har så mange lysbilder med stort innhold.
  • VBA med Powerpoint gir et snev av automatisering selv med begrensede funksjoner tilgjengelig.

Ulemper med Excel VBA PowerPoint

  • Vi må velge Microsoft PowerPoint 15.0-objektbiblioteket fra referansealternativet i Verktøy-menyen, som vi trenger i starten av eksempel-1, hver gang vi kjører koden for PowerPoint.

Ting å huske

  • Lagre filen i Macro-Enable Presentation-formatet etter å ha skrevet koden. Dette vil hjelpe oss å unngå å miste koden og bruke samme flere ganger i fremtiden.
  • Omkodingsfunksjonen vil ikke fungere her da vi må hoppe fra Excel til PowerPoint for å endre grensesnittet mellom sidene.
  • Kompiler alltid koden før du kjører. Dette vil hjelpe deg å finne feilen i koden. Dette er ganske nyttig når vi skriver store linjer med kode.
  • For å kjøre og implementere koden må vi åpne excel-arket med diagram som vi vil lime det inn i PowerPoint-lysbildet.
  • Vi kan justere diagrammet i PowerPoint etter våre behov.

Legg igjen en kommentar

PowerPoint-mal for årsrapport for ideelle organisasjoner: Gratis nedlastingsalternativer og sjekkliste for lysbilder

PowerPoint-mal for årsrapport for ideelle organisasjoner: Gratis nedlastingsalternativer og sjekkliste for lysbilder

Lag en tydelig årsrapport for ideelle organisasjoner i PowerPoint med en gratis mal, praktisk lysbildestruktur, effektmålinger, økonomi og presentasjonstips klare for givere.

PowerPoint-mal for minimalistisk investorpresentasjon for teknologioppstartsbedrifter: Hva du bør inkludere og hva du bør utelate

PowerPoint-mal for minimalistisk investorpresentasjon for teknologioppstartsbedrifter: Hva du bør inkludere og hva du bør utelate

Lag en pitch-presentasjon for investorer i oppstartsbransjen for ren teknologi i PowerPoint med praktisk lysbildestruktur, evidensorientert budskap, tilgjengelig design og færre distraksjoner.

Enkel mal for oppgavedelegeringsmatrise for Word: En praktisk versjon for små teamledere

Enkel mal for oppgavedelegeringsmatrise for Word: En praktisk versjon for små teamledere

Bruk denne enkle malen for oppgavedelegeringsmatrise i Word for å tilordne eiere, beslutningsgrenser, tidsfrister og kontrollpunkter uten å komplisere et lite team.

Enkel mal for oppmøteskjema for barnehage: Utskrivbar påmelding og avmelding for hjemmebarnepass

Enkel mal for oppmøteskjema for barnehage: Utskrivbar påmelding og avmelding for hjemmebarnepass

Bruk dette enkle utskrivbare oppmøteskjemaet for barnehagepass hjemme, med barnenavn, ankomst-/avreisetider, signaturer og tips om samsvar.

Utskrivbar én-siders markedsføringsstrategimal for lokale bedrifter

Utskrivbar én-siders markedsføringsstrategimal for lokale bedrifter

Bruk denne utskrivbare malen for markedsføringsstrategi på én side til å definere din lokale målgruppe, tilbud, kanaler, budsjett, ukentlige handlinger og målbare mål.

Slik stopper du Excel fra å automatisk endre tall til datoer

Slik stopper du Excel fra å automatisk endre tall til datoer

Stopp Excel fra å konvertere verdier som 1/2, 11-53 eller JAN1 til datoer. Lær pålitelige løsninger for skriving, liming, CSV-import og allerede konverterte celler.

Modern Real Estate Listing Presentation PowerPoint Template (Free): What to Include

Modern Real Estate Listing Presentation PowerPoint Template (Free): What to Include

Build a polished real estate listing PowerPoint for free with a practical slide plan, photo, branding, accessibility, compliance, and export tips.

Slik løser du feilen der Outlook ikke kan sende e-post, men kan motta

Slik løser du feilen der Outlook ikke kan sende e-post, men kan motta

Løs Outlook-problemer der du kan motta e-post, men ikke sende. Sjekk Utkast, frakoblet modus, pålogging, SMTP-innstillinger, profiler og endringer i Microsoft 365.

Enkel to-ukers lønnstracker i Excel for små team: En praktisk oppsettguide

Enkel to-ukers lønnstracker i Excel for små team: En praktisk oppsettguide

Bygg en enkel to-ukers lønnstracker i Excel for et lite team, med timer, lønn, fratrekk, gjennomgangsmarkeringer, oppsummeringer og retningslinjer for journalføring.

Utskrivbar sjekkliste for arrangementsplanlegging og budsjettmal for Word: Hva du skal inkludere og når du skal bruke Excel i stedet

Utskrivbar sjekkliste for arrangementsplanlegging og budsjettmal for Word: Hva du skal inkludere og når du skal bruke Excel i stedet

Lag eller tilpass en utskrivbar sjekkliste og budsjettmal for arrangementsplanlegging i Microsoft Word, med praktiske deler, avveininger og tips for Word kontra Excel.