VBA PowerPoint - Vytvoření prezentace PowerPoint z Excelu pomocí VBA

Obsah:

Anonim

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 Template

Pří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:

  1. PApplikace pro aplikaci PowerPoint.
  2. PPT pro prezentaci PowerPoint,
  3. PPTSlide pro PowerPoint Slide,
  4. PPTShapes pro PowerPoints,
  5. 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 -

  1. Sloupec Smazat VBA
  2. Stavový řádek v Excelu
  3. VBA Odstranit duplikáty
  4. Vytvořit tabulku v Excelu