Jak tworzyć i dodawać slajdy do prezentacji PowerPoint za pomocą VBA?

Kilka dni temu czytelnik zapytał, czy istnieje sposób na zautomatyzowanie tworzenia prezentacji PowerPoint od podstaw, a następnie szybkie dodawanie slajdów do istniejącej prezentacji. Pomyślałem, że ten skrypt może być wysoko na liście najbardziej przydatnych makr PowerPointa. 

Jak wskazaliśmy w przeszłości, PowerPoint nie zawiera rejestratora makr (w przeciwieństwie do Excela i Worda, które mają wbudowane rejestratory makr). Dlatego pozostaje nam stary dobry Visual Basic for Application, którego możemy użyć do tworzenia prostych makr do automatyzacji PowerPoint. Istnieją dalsze alternatywy dla automatyzacji programu PowerPoint, ale wykraczają one poza zakres tego samouczka.

W dzisiejszym krótkim samouczku omówimy trzy różne przypadki użycia:

  1. Tworzenie nowej prezentacji (pusta lub przy użyciu szablonu)
  2. Dodaj slajdy do istniejącej prezentacji.
  3. Mieszanka dwóch wyżej wymienionych przypadków (Tworzenie od podstaw i dodawanie slajdów)

Zacznijmy.

Spójrz na Wstążkę. Jeśli nie widzisz w menu pozycji Deweloper, przed rozpoczęciem kodowania musisz włączyć kartę Deweloper.

Po tym, jak menu Deweloper będzie widoczne na Wstążce, przejdź dalej i naciśnij Deweloper , a następnie naciśnij przycisk Visual Basic (lub po prostu naciśnij Alt + F11), aby otworzyć środowisko IDE Visual Basic.

VBA do tworzenia prezentacji PowerPoint

  1. W Edytorze VB kliknij prawym przyciskiem myszy VBAProject i naciśnij Wstaw .
  2. Wybierz Moduł .
  3. Wklej następujący kod w nowo utworzonym module.
Sub CreatePresentation()
Dim NewPres as Presentation
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
End Sub
  1. Hit Plik, a następnie Zapisz.
  2. Aby uruchomić kod, naciśnij Uruchom, a następnie wybierz Uruchom formularz podrzędny/użytkownika (lub po prostu F5).
  3. Zamknij edytor VB.

VBA do wstawiania slajdów

  1. W Edytorze VB kliknij prawym przyciskiem myszy VBAProject i naciśnij Wstaw.
  2. Wybierz moduł
  3. Wklej następujący kod w nowo utworzonym module.
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. Hit Plik, a następnie Zapisz.
  2. Aby uruchomić kod, naciśnij Uruchom, a następnie wybierz Uruchom formularz podrzędny/użytkownika (lub po prostu F5).
  3. Zamknij edytor VB.

Makro do konfiguracji nowej prezentacji i dodawania slajdów

Byłoby to po prostu pomieszaniem dwóch opisanych powyżej fragmentów.

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

Następnie możesz zajrzeć do naszego samouczka na temat programowego tworzenia kształtów w programie PowerPoint za pomocą VBA

Wygeneruj prezentację PowerPoint z Excela

Ostatni przypadek jest taki, że chcesz utworzyć prezentację PowerPoint bezpośrednio z arkusza kalkulacyjnego Excel. Możesz zastosować tę samą technikę z Worda i innych aplikacji Microsoft 365.

  • Połącz arkusz kalkulacyjny z modelem danych programu PowerPoint (z menu Narzędzia >> Referencje)
  • Wstaw przycisk do arkusza kalkulacyjnego Excel (Programista >> Wstaw, a następnie wybierz przycisk polecenia).
  • Wstaw poniższy kod VBA do projektu VBA arkusza kalkulacyjnego (bezpośrednio do arkusza lub do modułu VBA)
  • Zmodyfikuj skrypt zgodnie z wymaganiami.
  • Uruchom (naciśnij F5) i przetestuj wynik.
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

Ciesz się 🙂

Zalety programu Excel VBA PowerPoint

  • Korzystanie z VBA w programie Powerpoint ułatwia obsługę, jeśli plik ppt zawiera wiele slajdów z dużą zawartością.
  • VBA z Powerpointem daje odrobinę automatyzacji nawet przy ograniczonych dostępnych funkcjach.

Wady programu Excel VBA PowerPoint

  • Musimy wybrać Bibliotekę obiektów Microsoft PowerPoint 15.0 z opcji Odniesienia znajdującej się w opcji menu Narzędzia, której potrzebujemy na początku przykład-1, za każdym razem, gdy uruchamiamy kod programu PowerPoint.

Rzeczy do zapamiętania

  • Po napisaniu kodu zapisz plik w formacie prezentacji z obsługą makr. Pomoże nam to uniknąć utraty kodu i wielokrotnego użycia tego samego kodu w przyszłości.
  • Funkcja przekodowania nie będzie tutaj działać, ponieważ musimy przeskoczyć z Excela do PowerPointa, zmieniając interfejs między stronami.
  • Zawsze kompiluj kod przed uruchomieniem. Pomoże Ci to znaleźć błąd w kodzie. Jest to bardzo pomocne, gdy piszemy duże linie kodu.
  • Aby uruchomić i zaimplementować kod musimy otworzyć arkusz Excela z wykresem, który chcemy wkleić do slajdu PowerPointa.
  • Wykres w programie PowerPoint możemy wyrównać według naszych potrzeb.

Imbir 2.7.53.0

Imbir 2.7.53.0

Ginger to darmowy moduł do sprawdzania pisowni i gramatyki.

Bloki

Bloki

Blocks to intelektualna gra przeznaczona dla uczniów klas trzecich szkół podstawowych, służąca ćwiczeniu umiejętności wykrywania i wzroku. Nauczyciele objęli ją programem wspierania nauczania informatyki.

Prezi 6.26

Prezi 6.26

Prezi to darmowa aplikacja, która umożliwia tworzenie cyfrowych prezentacji, zarówno online, jak i offline.

Mathway

Mathway

Mathway to bardzo przydatna aplikacja, która pomoże Ci rozwiązać wszystkie problemy matematyczne, które wymagają bardziej złożonego narzędzia niż kalkulator wbudowany w Twoje urządzenie.

Prezenter Adobe

Prezenter Adobe

Adobe Presenter to oprogramowanie do e-learningu wydane przez firmę Adobe Systems, dostępne na platformie Microsoft Windows jako wtyczka Microsoft PowerPoint.

Tukan 2.3.0

Tukan 2.3.0

Toucan to edukacyjna platforma technologiczna. Pozwala nauczyć się nowego języka podczas przeglądania popularnych, codziennych stron internetowych.

ENetViet 24.2

ENetViet 24.2

eNetViet to aplikacja, która pomaga rodzicom połączyć się ze szkołą, w której uczą się ich dzieci, aby mogli lepiej zrozumieć aktualną sytuację edukacyjną swojego dziecka.

Duolingo

Duolingo

Duolingo - Ucz się języków za darmo, czyli po prostu Duolingo, to program edukacyjny, który pozwala uczyć się i ćwiczyć wiele różnych języków.

Szybkie pisanie

Szybkie pisanie

RapidTyping to wygodne i łatwe w użyciu narzędzie do nauki obsługi klawiatury, które pomoże Ci poprawić szybkość pisania i zmniejszyć liczbę błędów ortograficznych. Dzięki lekcjom zorganizowanym na wielu różnych poziomach RapidTyping nauczy Cię, jak pisać na klawiaturze lub doskonalić istniejące umiejętności.

Typ matematyczny 7.4.10.53

Typ matematyczny 7.4.10.53

MathType to interaktywne oprogramowanie do równań opracowane przez projektanta Design Science (Dessci), które umożliwia tworzenie i dodawanie adnotacji do notacji matematycznej na potrzeby przetwarzania tekstu, prezentacji, e-learningu itp. Ten edytor jest również używany do tworzenia dokumentów TeX, LaTeX i MathML.