Czy jest jakieś wydarzenie, które umożliwia uruchomienie makra w dowolnym momencie, gdy użytkownik wejdzie do slajdu lub opuści slajd?Jak uruchomić makro "OnEnterSlide" lub "OnLeaveSlide" w programie Powerpoint VBA?
Odpowiedz
SlideShowNextSlide lub OnSlideShowPageChange
można znaleźć pełną listę w http://officeone.mvps.org/vba/events_version.html
przykładowy kod z http://msdn.microsoft.com/en-us/library/aa211571%28office.11%29.aspx
Przykład ten określa położenie suwaka na szkiełku następujące zdarzenia SlideShowNextSlide.
Jeśli następny slajd ma trzy slajdy, przykład zmienia kolor wskaźnika na czerwony, a kolor pióra na .
Private Sub App_SlideShowNextSlide(ByVal Wn As SlideShowWindow)
Dim Showpos As Integer
Showpos = Wn.View.CurrentShowPosition + 1
If Showpos = 3 Then
With ActivePresentation.SlideShowSettings.Run.View
.PointerColor.RGB = RGB(255, 0, 0)
.PointerType = ppSlideShowPointerPen
End With
Else
With ActivePresentation.SlideShowSettings.Run.View
.PointerColor.RGB = RGB(0, 0, 0)
.PointerType = ppSlideShowPointerArrow
End With
End If
End Sub
Chciałbym dodać, że wydarzenie do korzystania naprawdę zależy od wersji programu PowerPoint. Dla mnie (PP 2007) kolejna impreza działa całkiem stabilny
Sub OnSlideShowPageChange(ByVal objWindow As SlideShowWindow)
Debug.Print objWindow.View.Slide.SlideIndex ' you can use this to check which slide invokes the event
End Sub
Kod ten nie potrzebuje dodatkowych struktur klasa (PPTEvent). Ale jeśli planujesz użyć innych zdarzeń, dobrym pomysłem jest zainicjowanie tej klasy w OnSlideShowPageChange.
Pamiętaj, że ten kod radzi sobie z pierwszą częścią zadanego zadania - wprowadzeniem slajdu. Możesz zapytać "A co z jego odejściem?". Cóż, jest to kwestia względności. Co oznacza wprowadzanie dla jednego slajdu w tym samym czasie pozostawiając dla innego. Po prostu użyj objWindow.View.Slide.SlideIndex, aby śledzić bieżący slajd, porównaj go z indeksem poprzedniego slajdu i zdecyduj, czy właśnie go opuściłeś.
- 1. Jak zastosować określony układ w programie PowerPoint przy użyciu vba?
- 2. Czy istnieje przyszłość VBA/VSTO programu PowerPoint?
- 3. VBA Powerpoint. Jak uzyskać aktualną ścieżkę do pliku w VBA?
- 4. Jak aktualizować wbudowane wykresy programu Excel w programie PowerPoint?
- 5. Jak automatycznie zatrzymać makro VBA?
- 6. Otwieranie pliku PowerPoint w programie PowerPoint na iPadzie
- 7. Jak programowo uruchomić pokaz slajdów programu PowerPoint?
- 8. Makro VBA w wielu arkuszach roboczych
- 9. Znajdź i zamień tekst w programie Powerpoint 2010 z programu Excel 2010 za pomocą VBA
- 10. Makro VBA do aktualizacji wielu plików w tej samej lokalizacji
- 11. Niedopasowanie argumentu ByRef w programie Excel VBA
- 12. Jak wywołać makro po naciśnięciu przycisku Odśwież lub Odśwież wszystko?
- 13. Osadzanie animowanej grafiki 3D R w programie PowerPoint
- 14. CopyOrigin na Insert w programie Excel VBA
- 15. Jak mogę przekonać program Powerpoint do wywoływania podprogramu VBA w animacji?
- 16. Makro programu Word, przechowujące bieżący wybór (VBA)
- 17. Excel VBA - Uruchom makro przed zapisaniem
- 18. Uruchamiaj makro do końca pliku w programie Visual Studio
- 19. VBA zminimalizować wstążkę w programie Excel
- 20. Filtrowanie tablic 2D w programie Excel VBA
- 21. Makro lub odpowiednik w reStructuredText?
- 22. Efektywna dolna obudowa w programie Excel VBA
- 23. Dołącz nagłówek tematu w programie Outlook (VBA)
- 24. Makro w programie Visual Studio 2010, które ładuje plik ustawień
- 25. Względne zamiast bezwzględnych ścieżek w programie Excel VBA
- 26. Jak uzyskać zalogowaną nazwę użytkownika w programie Access vba?
- 27. Jak odnieść się do tabel w programie Excel vba?
- 28. Jak uzyskać dostęp do grup kontaktów w programie Excel VBA?
- 29. jak podzielić łańcuch z wieloma delimetrami w programie vba excel?
- 30. Jak używać VBA do komórki w programie Excel 2007 przezroczysty
To tylko w celu wejścia. Nie wiem, czy jest jakieś wydarzenie związane z "pozostawieniem". –
Próbuję go uruchomić, wykonując tę http://stackoverflow.com/questions/2979950/how-to-automatically-trigger-the-app-object-initialization -in-powerpoint w oknie wykonywania, ale nie działa. Zrobiłem coś złego? – user310291
Odpowiedź na drugie pytanie –