Come creare e aggiungere diapositive alle presentazioni PowerPoint con VBA?

Un paio di giorni fa, un lettore ha chiesto se esiste un modo per automatizzare la creazione di presentazioni PowerPoint da zero e quindi aggiungere rapidamente diapositive a quella presentazione esistente. Ho pensato che quello script potesse essere molto nell'elenco delle macro di PowerPoint più utili. 

Come indicato in passato, PowerPoint non include un registratore di macro (a differenza di Excel e Word, che hanno entrambi registratori integrati per Macro). Pertanto, ci rimane il buon vecchio Visual Basic per applicazioni che possiamo utilizzare per creare semplici macro per automatizzare PowerPoint. Esistono ulteriori alternative per PowerPoint Automation, ma queste vanno oltre lo scopo di questo tutorial.

Nel breve tutorial di oggi, esamineremo tre diversi casi d'uso:

  1. Creazione di una nuova presentazione (vuota o utilizzando un modello)
  2. Aggiungi diapositive a una presentazione esistente.
  3. Un mix dei due casi sopra menzionati (Crea da zero e aggiunta di diapositive)

Iniziamo.

Guarda il nastro. Se non vedi la voce Sviluppatore nel menu, prima di iniziare la codifica dovrai abilitare la scheda sviluppatore.

Dopo aver reso visibile il menu Developer sulla barra multifunzione, vai avanti e premi Developer , quindi premi il pulsante Visual Basic (o semplicemente vai avanti e premi Alt+F11) per aprire l'IDE di Visual Basic.

VBA per creare presentazioni PowerPoint

  1. Nell'editor VB, fai clic con il pulsante destro del mouse su VBAProject e premi Inserisci .
  2. Seleziona Modulo .
  3. Incolla il codice seguente nel modulo appena creato.
Sub CreatePresentation()
Dim NewPres as Presentation
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
End Sub
  1. Premi File e poi Salva.
  2. Per eseguire il codice, premi Esegui e quindi seleziona Esegui modulo secondario/utente (o semplicemente F5).
  3. Chiudere l'editor VB.

VBA per inserire diapositive

  1. Nell'editor VB, fai clic con il pulsante destro del mouse su VBAProject e premi Inserisci.
  2. Seleziona Modulo
  3. Incolla il codice seguente nel modulo appena creato.
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. Premi File e poi Salva.
  2. Per eseguire il codice, premi Esegui e quindi seleziona Esegui modulo secondario/utente (o semplicemente F5).
  3. Chiudere l'editor VB.

Macro per impostare una nuova presentazione e aggiungere diapositive

Sarebbe solo confondere i due frammenti descritti sopra.

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

Successivamente potresti esaminare il nostro tutorial sulla creazione programmatica di forme in PowerPoint con VBA

Genera una presentazione PowerPoint da Excel

L'ultimo caso è che desideri creare una presentazione PowerPoint direttamente da un foglio di calcolo Excel. Puoi utilizzare la stessa tecnica da Word e da altre applicazioni Microsoft 365.

  • Collega il foglio di calcolo al modello di dati di PowerPoint (da Strumenti >> Riferimenti)
  • Inserisci un pulsante nel foglio di calcolo di Excel (Sviluppatore >> Inserisci e quindi seleziona un pulsante di comando).
  • Inserisci il codice VBA di seguito nel tuo progetto VBA Spreadsheet (direttamente nel foglio o in un modulo VBA)
  • Modificare lo script come richiesto.
  • Corri (premi F5) e verifica il risultato.
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

Divertiti 🙂

Pro di Excel VBA PowerPoint

  • L'uso di VBA in Powerpoint semplifica la gestione se un file ppt ha così tante diapositive con contenuti enormi.
  • VBA con Powerpoint dà un tocco di automazione anche con funzioni limitate disponibili.

Contro di Excel VBA PowerPoint

  • Dobbiamo selezionare la Libreria oggetti di Microsoft PowerPoint 15.0 dall'opzione Riferimento situata nell'opzione del menu Strumenti, di cui abbiamo bisogno all'inizio di esempio-1, ogni volta che eseguiamo il codice per PowerPoint.

Cose da ricordare

  • Salvare il file nel formato Presentazione con attivazione macro dopo aver scritto il codice. Questo ci aiuterà a evitare di perdere il codice e di utilizzare lo stesso tempo più volte in futuro.
  • La funzionalità di ricodifica non funzionerà qui poiché dobbiamo passare da Excel a PowerPoint modificando l'interfaccia tra le pagine.
  • Compilare sempre il codice prima di eseguirlo. Questo ti aiuterà a trovare l'errore nel codice. Questo è molto utile quando scriviamo grandi righe di codice.
  • Per eseguire e implementare il codice dobbiamo aprire il foglio Excel con il grafico che vogliamo incollare nella diapositiva di PowerPoint.
  • Possiamo allineare il grafico in PowerPoint secondo le nostre esigenze.

Zenzero 2.7.53.0

Zenzero 2.7.53.0

Ginger è un correttore ortografico e grammaticale gratuito.

Blocchi

Blocchi

Blocks è un gioco intellettuale rivolto agli studenti delle scuole elementari di terza elementare per esercitare le proprie capacità di rilevamento e vista ed è incluso dagli insegnanti nel programma di supporto all'insegnamento informatico.

Prezio 6.26

Prezio 6.26

Prezi è un'applicazione gratuita che ti consente di creare presentazioni digitali, sia online che offline.

Mathway

Mathway

Mathway è un'app molto utile che può aiutarti a risolvere tutti quei problemi di matematica che richiedono uno strumento più complesso della calcolatrice integrata nel tuo dispositivo.

Presentatore Adobe

Presentatore Adobe

Adobe Presenter è un software di e-Learning rilasciato da Adobe Systems disponibile sulla piattaforma Microsoft Windows come plug-in di Microsoft PowerPoint.

Tucano 2.3.0

Tucano 2.3.0

Toucan è una piattaforma tecnologica educativa. Ti consente di imparare una nuova lingua mentre navighi su siti Web comuni di tutti i giorni.

ENetViet 24.2

ENetViet 24.2

eNetViet è un'applicazione che aiuta a connettere i genitori con la scuola in cui studiano i loro figli in modo che possano comprendere chiaramente l'attuale situazione di apprendimento dei loro figli.

Duolingo

Duolingo

Duolingo - Impara le lingue gratis, o semplicemente Duolingo, è un programma educativo che ti permette di imparare e praticare molte lingue diverse.

Digitazione rapida

Digitazione rapida

RapidTyping è uno strumento di allenamento per la tastiera comodo e facile da usare che ti aiuterà a migliorare la velocità di digitazione e a ridurre gli errori di ortografia. Con lezioni organizzate per molti livelli diversi, RapidTyping ti insegnerà come digitare o migliorare le competenze esistenti.

MathType 7.4.10.53

MathType 7.4.10.53

MathType è un software di equazioni interattive dello sviluppatore Design Science (Dessci), che consente di creare e annotare notazioni matematiche per l'elaborazione di testi, presentazioni, eLearning, ecc. Questo editor viene utilizzato anche per creare documenti TeX, LaTeX e MathML.