Суть моей проблемы в следующем: решаю некую задачу на VBA. Потребовалась необходимость при смене слайда или начале/окончании презентации выстреливать данные в Com-порт. Это все решается при помощи компонента MSComm32. Но затык возник в следующем: не могу отловить событие смены слайда!
Задачу эту решал так:
Создал модуль класса, в нем указал
Public WithEvents App As Application
В другом модуле соответственно сделал следующее
Dim X As New EventClassModule
Sub InitializeApp()
Set X.App = Application
End Sub
и вызываю процедуру InitializeApp при инициализации экранной формы. Она выполняется нормально.
Однако когда в модуле класса я начинаю описывать обработку, ну например, событие смены слайда и пытаюсь вывести его номер MsgBox`ом, то ничего.... Что у меня может быть неправильно?
Кстати, если в процедуру InitializeApp добавляю след строку:
Sub InitializeApp()
Set X.App = Application
Application.ActivePresentation.SlideShowSettings.Run
End Sub
то событие смены слайда обрабатывается, но лишь один раз... В чем может быть проблема?