VBA PowerPoint | Tutorial VBA per crear presentacions de Powerpoint

PowerPoint Excel VBA

Utilitzant VBA podem automatitzar el treball que fem per a PowerPoint, però primer per utilitzar codi VBA o fragments per treballar en powerpoint primer, es treballen les opcions de seguretat de PowerPoint per habilitar totes les macros i, a continuació, es pot utilitzar la referència PowerPoint VBA per a macros de MS PowerPoint.

La bellesa de VBA és que podem fer referència a altres productes de Microsoft, com ara "Microsoft Word" i "Microsoft PowerPoint". Normalment creem informes en excel i després creem presentacions de PowerPoint. Tots els usuaris d'Excel solen passar una quantitat considerable de temps per preparar la presentació a partir de dades i informes d'Excel. Si dediqueu una quantitat considerable de temps a preparar presentacions de PowerPoint, aquest tutorial us mostrarà com crear una presentació de PowerPoint des del propi excel mitjançant la codificació VBA.

Activa el model d'objectes de Powerpoint

Pas 1: Obriu VBA Editor i, a continuació, aneu a Eines i referències.

Pas 2: Ara veureu totes les referències al Projecte VBA. Desplaceu-vos cap avall i seleccioneu "Microsoft PowerPoint 15.0 Object Library".

Pas 3: Feu clic a Ok. Ara podem accedir a PowerPoint des d’excel.

Tutorial VBA per crear presentacions de PowerPoint

Podem crear PPT de dues maneres, una utilitzant "Early Binding" i una altra utilitzant "Late Binding". Us mostrarem com crear una presentació de PowerPoint mitjançant mitjançant la tècnica “Early Binding”.

Podeu descarregar aquesta plantilla VBA PowerPoint Excel aquí: plantilla VBA PowerPoint Excel

Normalment, des d’Excel preparem presentacions basades en gràfics i la interpretació dels gràfics. Per tant, amb aquest propòsit he creat gràfics i interpretacions excel·lents en el mateix full de càlcul.

Pas 1: Inicieu la subrutina a vba. Ara per accedir a PowerPoint ja hem activat el model d’objectes de PowerPoint en els passos anteriors, ara per accedir-hi hem de declarar la variable com a PowerPoint.Application.

Codi:

 Sub PPT_Example () Dim PPApp com a PowerPoint. Finalització de l'aplicació Sub 

Pas 2: Per afegir la presentació a PowerPoint, hem de declarar una variable com a PowerPoint.Presentació.

Codi:

 Atenuar PPPresentació com a PowerPoint.Presentació

Pas 3: Després d’afegir la presentació al PowerPoint, hem d’afegir Slide. Per declarar la variable com a PowerPoint.Slide

Codi:

 Dim PPSlide com a PowerPoint.Slide

Pas 4: Un cop afegida la diapositiva al PowerPoint, hem de fer ús de formes al PowerPoint, és a dir, als quadres de text. Per declarar una variable com a PowerPoint.Shape

Codi:

 Dim PPShape com a PowerPoint.Shape

Pas 5: Ara, per accedir a tots els gràfics del full de treball, hem de declarar la variable com a Excel.ChartObjects.

Codi:

 Atenuar PPCharts com a Excel.ChartObject

D’acord, per iniciar el procediment aquestes variables són suficients.

Pas 6: Ara hem d’iniciar el PowerPoint des d’excel. Com que és un objecte extern, hem de configurar-lo com un nou powerpoint.

Codi:

 Estableix PPApp = Nova aplicació de PowerPoint

Això llançarà el nou PowerPoint des d’excel.

Pas 7: Ara la variable PPApp és igual al PowerPoint que hem llançat. Ara feu visible aquest PowerPoint i maximitzeu la finestra.

Codi:

PPApp.Visible = msoCTrue PPApp.WindowState = ppWindowMaximized

En aquest moment, només cal que executeu el codi amb la tecla F5 o manualment, hauríeu de veure que l'aplicació PowerPoint es va llançar com la següent.

Pas 8: Ara hem d’afegir una presentació a l’aplicació PowerPoint que hem llançat.

Codi:

 Estableix PPPresentation = PPApp.Presentations.Add

Ara hauríem de veure la presentació de PowerPoint així.

Pas 9: Després d'afegir la presentació, hem d'afegir una diapositiva.

Codi:

 Estableix PPSlide = PPPresentation.Slides.Add (1, ppLayoutTitleOnly)

Ara això afegirà la diapositiva del títol com la següent.

Pas 10:Ara tenim més d’un gràfic al full de càlcul que hem de fer un recorregut per cada gràfic i enganxar-lo a la presentació. A continuació es mostra el codi per copiar i enganxar el gràfic, així com la interpretació.

A continuació es mostra el codi complet per a vostè.

 Sub PPT_Example () Dim PPApp As PowerPoint.Application Dim PPPresentation As PowerPoint.Presentation Dim PPSlide As PowerPoint.Slide Dim PPShape As PowerPoint.Shape Dim PPCharts As Excel.ChartObject Set PPApp = New PowerPoint.Application PPApp.Visible = msoCTrue PPApp.WindowState ppWindowMaximized "Afegeix conjunt de presentacions PPPresentation = PPApp.Presentations.Add" Bucle a través de cada gràfic a l'Excel i enganxeu-lo al PowerPoint per a cada PPCharts d'ActiveSheet.ChartObjects PPApp.ActivePresentation.Slides.Add PPApp.ActivePresentation.Slides.CountT + 1, pp. PPApp.ActiveWindow.View.GotoSlide PPApp.ActivePresentation.Slides.Count Set PPSlide = PPApp.ActivePresentation.Slides (PPApp.ActivePresentation.Slides.Count) "Copieu el gràfic i enganxeu-lo a PowerPoint PPCharts.Select ActiveChart.ChartAide.Copy. .PasteSpecial (DataType: = ppPasteMetafilePicture). Seleccioneu "Afegeix capçalera a la diapositiva PPSlide.Shapes (1) .TextFrame.TextRange.Text = PPCharts.Chart.ChartTitle.Text" Alineació del c hart PPApp.ActiveWindow.Selection.ShapeRange.Left = 15 PPApp.ActiveWindow.Selection.ShapeRange.Top = 125 PPSlide.Shapes (2) .Width = 200 PPSlide.Shapes (2) .Left = 505 'Afegir interpretació Si InStr (PPSlide .Shapes (1) .TextFrame.TextRange.Text, "Region") A continuació, PPSlide.Shapes (2) .TextFrame.TextRange.Text = Range ("K2"). Value & vbNewLine PPSlide.Shapes (2) .TextFrame.TextRange .InsertAfter (Range ("K3"). Value & vbNewLine) 'Altrament si el gràfic és el gràfic de consum "Renovable", introduïu els comentaris corresponents ElseIf InStr (PPSlide.Shapes (1) .TextFrame.TextRange.Text, "Month ") A continuació, PPSlide.Shapes (2) .TextFrame.TextRange.Text = Range (" K20 "). Value & vbNewLine PPSlide.Shapes (2) .TextFrame.TextRange.InsertAfter (Range (" K21 "). Value & vbNewLine) PPSlide.Shapes (2) .TextFrame.TextRange.InsertAfter (Range ("K22"). Value & vbNewLine) End Si "Ara canviem la mida del tipus de lletra del quadre de text destacat PPSlide.Shapes (2) .TextFrame.TextRange.Font. Mida = 16 Següent PPCharts End Sub