Excel VBA PowerPoint-tutorial
VBA er et kraftfuldt værktøj, der kan bruges inden for ethvert område af Microsoft integrerede værktøjer. Ligesom MS Excel har Powerpoint også en bestemmelse til at oprette en makro og automatisere præsentationen. Automatiseringen kan være af enhver form. Du har set præsentationer, hvor lysbillederne er så store og detaljerede, som undertiden ender med at have 50+ lysbilleder bare for at dække et træningsemne eller en rapport. Så i stedet for at tilføje diagrammerne i PowerPoint fra Excel, kan vi oprette en kode, der direkte kopierer diagrammerne fra Excel og indsætter den i PowerPoint-dias.
Sådan opretter du en PowerPoint-præsentation fra Excel VBA?
Nedenfor er eksemplet til at oprette en powerpoint-præsentation Brug af VBA-kode i Excel:
Du kan downloade denne VBA PowerPoint Excel-skabelon her - VBA PowerPoint Excel-skabelonVBA PowerPoint-eksempel
Lad os oprette et diagram først i Excel. Til det har vi brug for data. Nedenfor har vi nogle salgsdata for 8 sælgere.
Lad os nu oprette et kolonnediagram eller -grafik ved hjælp af ovenstående data. Vi ser nedenfor, vi har nu et søjlediagram med titlen solgt mængde og alle etiketter indsat.
Nu er vores opgave at få denne graf i PowerPoint-dias, som den her vises med titlen på diagrammet som titlen på PowerPoint-dias. Til dette er vi nødt til at aktivere PowerPoint i VBA.
Følg nedenstående trin:
Trin 1: Gå til VBA- værktøjsmenuen som vist nedenfor, og vælg Referencer … som vist nedenfor.
Trin 2: Når vi først har gjort det, får vi et referencer VBA-projektvinduer. Vælg MS PowerPoint 15.0 Object Library fra listen, som vist nedenfor. Dette aktiverer alle kommandoer relateret til MS PowerPoint i VBA. Uden dette kan vi ikke køre VBA i PowerPoint. Marker afkrydsningsfeltet i det nævnte bibliotek, og klik på Ok .
Trin 3: Nu skal vi bruge et modul til at skrive koden til VBA PowerPoint. For at få et nyt modul skal du gå til Indsæt menu og vælge en modulindstilling som vist nedenfor.
Trin 4: I dette modul skal du skrive underkategorien til VBA PowerPoint eller i ethvert andet navn efter dit behov som vist nedenfor.
Kode:
Sub VBA_Presentation () End Sub
Trin 5: Nu har vi få variabler til at oprette en præsentation ved hjælp af diagram i Excel. Lad os betragte 5 variabler som:
- PA-ansøgning til PowerPoint-applikation.
- PPT til PowerPoint-præsentation,
- PPTSlide til PowerPoint Slide,
- PPTS-forme til PowerPoints,
- PPTCharts til Excel Chart Object.
Kode:
Sub VBA_Presentation () Dim PAplication As PowerPoint.Application Dim PPT As PowerPoint.Presentation Dim PPTSlide As PowerPoint.Slide Dim PPTShapes as PowerPoint.Shape Dim PPTCharts Som Excel.ChartObject End Sub
Trin 6: Brug nu kommandoen Set til at tilføje nyt PowerPoint- program som vist nedenfor.
Kode:
Sub VBA_Presentation () Dim PAplication Som PowerPoint.Application Dim PPT As PowerPoint.Presentation Dim PPTSlide Som PowerPoint.Slide Dim PPTShapes som PowerPoint.Shape Dim PPTCharts Som Excel.ChartObject Set PAplication = New PowerPoint.Application End Sub
Trin 7: Gør PowerPoint-applikation synlig i en kodelinie og brug msoCTrue til mystisk evaluering af den forkerte måde. Og derefter bruges den samme applikation som maksimeret i PowerPoint for at få fuld visning.
Kode:
Sub VBA_Presentation () Dim PAplication As PowerPoint.Application Dim PPT As PowerPoint.Presentation Dim PPTSlide As PowerPoint.Slide Dim PPTShapes As PowerPoint.Shape Dim PPTCharts Som Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplicationWindow ppWindowMaximized End Sub
Trin 8: Indstil nu PPT, som er vores præsentation, der skal tilføjes i MS PowerPoint-applikation,
Kode:
Sub VBA_Presentation () Dim PAplication As PowerPoint.Application Dim PPT As PowerPoint.Presentation Dim PPTSlide As PowerPoint.Slide Dim PPTShapes As PowerPoint.Shape Dim PPTCharts Som Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplicationWindow ppWindowMaximized Set PPT = PAplication.Presentations.Tilføj slutdel
Trin 9: Nu bruger vi en kombination af For-Next og If-Else-loop. Start med For-Next Loop.
Kode:
Sub VBA_Presentation () Dim PAplication As PowerPoint.Application Dim PPT As PowerPoint.Presentation Dim PPTSlide As PowerPoint.Slide Dim PPTShapes As PowerPoint.Shape Dim PPTCharts Som Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplicationWindow ppWindowMaximized Set PPT = PAplication.Presentations.Tilføj til sub-næste slutning
Trin 10: I For loop af PPTCharts skal du først aktivere diagrammer i Excel.
Kode:
Sub VBA_Presentation () Dim PAplication As PowerPoint.Application Dim PPT As PowerPoint.Presentation Dim PPTSlide As PowerPoint.Slide Dim PPTShapes As PowerPoint.Shape Dim PPTCharts Som Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplicationWindow ppWindowMaximized Set PPT = PAplication.Presentations.Tilføj for hver PPTCharts i ActiveSheet.ChartObjects Næste PPTCharts End Sub
Trin 11: Nedenfor er koden til indsættelse af diagrammet fra Excel til PowerPoint-dias. Brug kode til at tilføje et dias til defineret PAplikering og tilføje +1 dias hver gang vi kører koden.
Kode:
Sub VBA_Presentation () Dim PAplication As PowerPoint.Application Dim PPT As PowerPoint.Presentation Dim PPTSlide As PowerPoint.Slide Dim PPTShapes As PowerPoint.Shape Dim PPTCharts Som Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplicationWindow ppWindowMaximized Sæt PPT = PAplication.Presentations.Tilføj for hver PPTCharts i ActiveSheet.ChartObjects PAplication.ActivePresentation.Slides.Add PAplication.ActivePresentation.Slides.Count + 1, ppLayoutText Næste PPTCharts End Sub Sub
Trin 12: Nu i fortsættelsen til den næste kodelinie, skal du bruge nedenstående kodesæt til at indstille en aktiv vinduesvisning. Dette bruges til at glide, når Chart er indsat i PowerPoint-præsentation.
Kode:
Sub VBA_Presentation () Dim PAplication As PowerPoint.Application Dim PPT As PowerPoint.Presentation Dim PPTSlide As PowerPoint.Slide Dim PPTShapes As PowerPoint.Shape Dim PPTCharts Som Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplicationWindow ppWindowMaximized Set PPT = PAplication.Presentations.Tilføj for hver PPTCharts i ActiveSheet.ChartObjects PAplication.ActivePresentation.Slides.Add PAplication.ActivePresentation.Slides.Count + 1, ppLayoutText PAplication.ActiveWindow.View.PleaseSite = PAplication.ActivePresentation.Slides (PAplication.ActivePresentation.Slides.Count) Næste PPTCharts End Sub
Trin 13: Når det er gjort, skal du vælge PPTChart- variablen, som vi definerede tidligere. Derefter kopierer det valgte aktive diagram til det diagramområde, hvor det vil blive placeret. Og brug Paste Special- kommandoen til at indsætte diagrammet med billeder.
Kode:
Sub VBA_Presentation () Dim PAplication As PowerPoint.Application Dim PPT As PowerPoint.Presentation Dim PPTSlide As PowerPoint.Slide Dim PPTShapes As PowerPoint.Shape Dim PPTCharts Som Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplicationWindow ppWindowMaximized Set PPT = PAplication.Presentations.Tilføj for hver PPTCharts i ActiveSheet.ChartObjects PAplication.ActivePresentation.Slides.Add PAplication.ActivePresentation.Slides.Count + 1, ppLayoutText PAplication.ActiveWindow.View.PleaseSite = PAplication.ActivePresentation.Slides (PAplication.ActivePresentation.Slides.Count) PPTCharts.Select ActiveChart.ChartArea.Copy PPTSlide.Shapes.PasteSpecial (DataType: = ppPasteMetafilePicture) .Vælg Næste PPTCharts End Sub Sub
Trin 14: Vælg nu formen på diagrammet, der er ved første position som tekstområde. Og bær den samme titel, der er “ solgt mængde ” i PowerPoint-præsentationen.
Kode:
Sub VBA_Presentation () Dim PAplication As PowerPoint.Application Dim PPT As PowerPoint.Presentation Dim PPTSlide As PowerPoint.Slide Dim PPTShapes As PowerPoint.Shape Dim PPTCharts Som Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplicationWindow ppWindowMaximized Set PPT = PAplication.Presentations.Tilføj for hver PPTCharts i ActiveSheet.ChartObjects PAplication.ActivePresentation.Slides.Add PAplication.ActivePresentation.Slides.Count + 1, ppLayoutText PAplication.ActiveWindow.View.PleaseSite = PAplication.ActivePresentation.Slides (PAplication.ActivePresentation.Slides.Count) PPTCharts.Select ActiveChart.ChartArea.Copy PPTSlide.Shapes.PasteSpecial (DataType: = ppPasteMetafilePicture) .Vælg PPTSlide.ShapexthFext.Range. .Chart.ChartTitle.Text Næste PPTCharts End Sub
Dette udfylder koden for VBA PowerPoint.
Trin 15: Kompilér nu koden trin for trin for at vide, om en kodelinje har en fejl ved at trykke på funktionstasten F8. Og derefter kør koden ved at klikke på knappen Play, der er under menulinjen, som vist nedenfor.
Vi får oversigt over diagrammet i PowerPoint-filen i det første dias som vist nedenfor.
Da koden er stor, så kan den komplette kode ses i tekstfeltet nedenfor.
Fordele ved Excel VBA PowerPoint
- Brug af VBA i Powerpoint gør det nemt at håndtere, hvis en ppt-fil har så mange dias med stort indhold.
- VBA med Powerpoint giver et strejf af automatisering, selv med begrænsede tilgængelige funktioner.
Ulemper ved Excel VBA PowerPoint
- Vi er nødt til at vælge Microsoft PowerPoint 15.0 Object Library fra Referenceindstillingen i Tool menu-indstillingen, som vi har brug for i starten af eksempel-1, hver gang vi kører koden til PowerPoint.
Ting at huske
- Gem filen i makroaktiver præsentationsformat, når du har skrevet koden. Dette vil hjælpe os med at undgå at miste koden og bruge den samme flere tid i fremtiden.
- Genkodningsfunktion fungerer ikke her, da vi er nødt til at hoppe fra Excel til PowerPoint og æ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 meget nyttigt, når vi skriver store kodelinjer.
- For at køre og implementere koden er vi nødt til at åbne excelarket med kort, at vi vil indsætte det i PowerPoint-dias.
- Vi kan justere diagrammet i PowerPoint efter vores behov.
Anbefalede artikler
Dette er en guide til VBA PowerPoint. Her diskuterer vi, hvordan man opretter PowerPoint-præsentation fra Excel ved hjælp af VBA-kode sammen med et praktisk eksempel og downloadbar excel-skabelon. Du kan også gennemgå vores andre foreslåede artikler -
- VBA Slet kolonne
- Statuslinje i Excel
- VBA Fjern duplikater
- Opret regneark i Excel