Výukový program Excel VBA PowerPoint
VBA je výkonný nástroj, který lze použít v jakékoli oblasti integrovaných nástrojů společnosti Microsoft. Stejně jako MS Excel, i Powerpoint obsahuje ustanovení pro vytvoření makra a automatizaci prezentace. Automatizace může mít jakoukoli formu. Viděli jste prezentace, kde jsou snímky tak velké a podrobné, že někdy končí 50+ snímků, které pokrývají téma školení nebo zprávu. Takže namísto přidání grafů v aplikaci PowerPoint z aplikace Excel můžeme vytvořit kód, který zkopíruje grafy přímo z aplikace Excel a vloží je do snímku aplikace PowerPoint.
Jak vytvořit prezentaci PowerPoint z Excel VBA?
Níže je uveden příklad vytvoření powerpointové prezentace pomocí kódu VBA v Excelu:
Tuto šablonu aplikace VBA PowerPoint Excel si můžete stáhnout zde - VBA PowerPoint Excel TemplatePříklad aplikace VBA PowerPoint
Vytvořme nejprve graf v Excelu. K tomu potřebujeme data. Níže uvádíme údaje o prodeji 8 prodejců.
Nyní vytvořme sloupcový graf nebo graf pomocí výše uvedených dat. Uvidíme níže, nyní máme sloupcový graf s nadpisem Množství prodáno a vloženy všechny štítky.
Naším úkolem je nyní dostat tento graf do snímku aplikace PowerPoint, jak ukazuje obrázek s názvem grafu jako název snímku aplikace PowerPoint. K tomu musíme povolit PowerPoint ve VBA.
Postupujte podle následujících kroků:
Krok 1: Přejděte do nabídky Nástroje VBA, jak je ukázáno níže, a vyberte možnost Odkazy … viz níže.
Krok 2: Jakmile to uděláme, dostaneme okna projektu Reference VBA Project. Z tohoto seznamu vyberte MS PowerPoint 15.0 Object Library, jak je ukázáno níže. Tím se aktivují všechny příkazy související s MS PowerPoint ve VBA. Bez tohoto, nemůžeme spustit VBA v aplikaci PowerPoint. Zaškrtněte políčko zmíněné knihovny a klikněte na OK .
Krok 3: Nyní pro psaní kódu pro VBA PowerPoint potřebujeme modul. Chcete-li získat nový modul, přejděte do nabídky Vložit a vyberte možnost modulu, jak je ukázáno níže.
Krok 4: Do tohoto modulu napište podkategorii aplikace VBA PowerPoint nebo do jakéhokoli jiného názvu podle potřeby, jak je uvedeno níže.
Kód:
Sub VBA_Presentation () End Sub
Krok 5: Nyní pro vytvoření prezentace pomocí Excelu v Excelu potřebujeme několik Proměnných. Uvažujme 5 proměnných jako:
- PApplikace pro aplikaci PowerPoint.
- PPT pro prezentaci PowerPoint,
- PPTSlide pro PowerPoint Slide,
- PPTShapes pro PowerPoints,
- PPTCharts pro objekt Excel Chart.
Kód:
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 As Excel.ChartObject End Sub
Krok 6: Nyní pomocí příkazu Set přidejte novou aplikaci PowerPoint, jak je ukázáno níže.
Kód:
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 As Excel.ChartObject Set PAplication = New PowerPoint.Application End Sub
Krok 7: V řádku kódu zviditelněte aplikaci PowerPoint a použijte msoCTrue pro záhadné vyhodnocení nesprávného způsobu. A poté se stejná aplikace použije jako Maximalizovaná v aplikaci PowerPoint, aby se dosáhlo úplného zobrazení.
Kód:
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 As Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplication.WindowState = ppWindowMaximized End Sub
Krok 8: Nyní nastavte PPT, což je naše prezentace pro přidání do aplikace MS PowerPoint,
Kód:
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 As Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplication.WindowState = ppWindowMaximized Set PPT = PAplication.Presentations.Add End Sub
Krok 9: Nyní použijeme kombinaci smyčky For-Next a If-Else. Počínaje smyčkou For-Next.
Kód:
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 As Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplication.WindowState = ppWindowMaximized Set PPT = PAplication.Presentations.Add pro další konec Sub
Krok 10: V Pro smyčku PPTCharts první aktivní grafy ve Excelu.
Kód:
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 As Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplication.WindowState = ppWindowMaximized Set PPT = PAplication.Presentations.Add pro každý PPTCharts v ActiveSheet.ChartObjects Next PPTCharts End Sub
Krok 11: Níže je kód pro vložení grafu z aplikace Excel do snímku aplikace PowerPoint. Použijte kód pro přidání snímku do definované PAplikace přidáním snímku +1 při každém spuštění kódu.
Kód:
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 As Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplication.WindowState = ppWindowMaximized Set PPT = PAplication.Presentations.Add pro každý PPTCharts v ActiveSheet.ChartObjects PAplication.ActivePresentation.Slides.Add PAplication.ActivePresentation.Slides.Count + 1, ppLayoutText Next PPTCharts End Sub Sub
Krok 12: Nyní na pokračování k dalšímu řádku kódu použijte níže uvedenou sadu kódů k nastavení aktivního zobrazení okna. Toto se použije k posloupnosti poté, co se graf vloží do prezentace aplikace PowerPoint.
Kód:
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 As Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplication.WindowState = ppWindowMaximized Set PPT = PAplication.Presentations.Add pro každý PPTCharts v ActiveSheet.ChartObjects PAplication.ActivePresentation.Slides.Add PAplication.ActivePresentation.Slides.Count + 1, ppLayoutText PAplication.ActiveWindow.View.GlSlidePosazeníSlidesPosazení = PAplication.ActivePresentation.Slides (PAplication.ActivePresentation.Slides.Count) Další PPTCharts End Sub Sub
Krok 13: Po dokončení vyberte proměnnou PPTChart, kterou jsme definovali dříve. Poté zkopírujte vybraný aktivní graf do oblasti grafu, kde bude umístěn. A pomocí příkazu Vložit jinak vložte graf s obrázky.
Kód:
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 As Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplication.WindowState = ppWindowMaximized Set PPT = PAplication.Presentations.Add pro každý PPTCharts v ActiveSheet.ChartObjects PAplication.ActivePresentation.Slides.Add PAplication.ActivePresentation.Slides.Count + 1, ppLayoutText PAplication.ActiveWindow.View.GlSlidePosazeníSlidesPosazení = PAplication.ActivePresentation.Slides (PAplication.ActivePresentation.Slides.Count) PPTCharts.Select ActiveChart.ChartArea.Copy PPTSlide.Shapes.PasteSpecial (DataType: = ppPasteMetafilePicture) .Vyberte další PPTCharts End Sub Sub
Krok 14: Nyní vyberte tvar grafu, který je na první pozici jako textový rozsah. A nese stejný název, který je „ Množství prodáno “, do prezentace PowerPoint.
Kód:
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 As Excel.ChartObject Set PAplication = New PowerPoint.Application PAplication.Visible = msoCTrue PAplication.WindowState = ppWindowMaximized Set PPT = PAplication.Presentations.Add pro každý PPTCharts v ActiveSheet.ChartObjects PAplication.ActivePresentation.Slides.Add PAplication.ActivePresentation.Slides.Count + 1, ppLayoutText PAplication.ActiveWindow.View.GlSlidePosazeníSlidesPosazení = PAplication.ActivePresentation.Slides (PAplication.ActivePresentation.Slides.Count) PPTCharts.Select ActiveChart.ChartArea.Copy PPTSlide.Shapes.PasteSpecial (DataType: = ppPasteMetafilePicture) .Vyberte PPTSlide.Shapes (1). .Chart.ChartTitle.Text Next PPTCharts End Sub
Tím je dokončen kód pro VBA PowerPoint.
Krok 15: Nyní zkompilujte kód krok za krokem a zjistěte, zda některý řádek kódu má chybu stisknutím funkční klávesy F8. Poté kód spusťte kliknutím na tlačítko Přehrát, které je pod panelem nabídek, jak je znázorněno níže.
Získáme graf zveřejněný v souboru PowerPoint na jeho prvním snímku, jak je ukázáno níže.
Protože je kód velký, celý text lze vidět v textovém poli níže.
Výhody aplikace Excel VBA PowerPoint
- Použití VBA v aplikaci Powerpoint usnadňuje manipulaci, pokud soubor ppt obsahuje tolik snímků s obrovským obsahem.
- VBA s Powerpoint dává nádech automatizace i s omezenými dostupnými funkcemi.
Nevýhody Excel VBA PowerPoint
- Musíme vybrat knihovnu objektů Microsoft PowerPoint 15.0 z možnosti Reference umístěné v nabídce Nástroje, kterou potřebujeme na začátku příkladu 1, pokaždé, když spustíme kód pro PowerPoint.
Co si pamatovat
- Po zápisu kódu uložte soubor ve formátu Macro-Enable Presentation. To nám pomůže vyhnout se ztrátě kódu a použití stejného vícenásobného času v budoucnosti.
- Funkce překódování zde nebude fungovat, protože musíme přeskočit z Excelu do PowerPoint a změnit rozhraní mezi stránkami.
- Před spuštěním vždy sestavte kód. To vám pomůže najít chybu v kódu. To je docela užitečné, když píšeme velké řádky kódu.
- Abychom mohli spustit a implementovat kód, musíme otevřít Excel list s grafem, který chceme vložit do snímku aplikace PowerPoint.
- Můžeme zarovnat graf v aplikaci PowerPoint podle našich potřeb.
Doporučené články
Toto je průvodce VBA PowerPoint. Zde diskutujeme o tom, jak vytvořit PowerPoint prezentaci z Excelu pomocí kódu VBA spolu s praktickým příkladem a stahovatelnou šablonou Excel. Můžete si také prohlédnout naše další doporučené články -
- Sloupec Smazat VBA
- Stavový řádek v Excelu
- VBA Odstranit duplikáty
- Vytvořit tabulku v Excelu