Как заставить Powerpoint вызывать подпрограмму VBA в анимации? - PullRequest
5 голосов
/ 19 августа 2010

В конечном итоге я хочу ShellExecute() программу командной строки каждый раз, когда в слайд-шоу PowerPoint появляется новый слайд. Я использую Office 2003 PowerPoint.

Я сделал следующее:

  1. Инструменты > Параметры > Параметры безопасности > Безопасность макросов > Уровень безопасности = Средний

  2. Инструменты > Параметры > Макрос > Редактор VBA:

    Sub OnSlideShowPageChange(ByVal SSW As SlideShowWindow)
      MsgBox ("OnSlideShowPageChange")
    End Sub
    
  3. Файл > Сохранить

  4. Назад в PowerPoint: F5 (для слайд-шоу > Показать шоу). НЕ видел окно сообщения

  5. Выйдите из PowerPoint, снова откройте файл .ppt, F5 ) снова. Все еще не вижу окно сообщения

Вопрос : Чего мне не хватает? Почему OnSlideShowPageChange не вызывается при запуске слайд-шоу ???

1 Ответ

3 голосов
/ 19 августа 2010

Для меня все работает нормально, используя только ваши шаги выше.Единственное, о чем я могу подумать, это на шаге 2 выше, вы, возможно, поместили automacro OnSlideShowPageChange в Class или UserForm.Это должно войти в Модуль (любой модуль, любое имя).Или у вас есть другой код, который может мешать, например, вы также потопили событие SlideShowNextSlide?

...