Как запустить анимацию, если была нажата гиперссылка на другой слайд?

364
leandriis

Я хотел бы знать, возможно ли запустить анимацию на определенном слайде, если была использована определенная гиперссылка на другом слайде той же презентации.


Фон:

В настоящее время я использую PowerPoint2016 для создания слайдов для игры PowerPoint Karaoke . Я начал с выбора слайда, где пять маленьких значков представляют каждый из пяти наборов слайдов, которые я подготовил. Каждый значок является гиперссылкой на первый слайд соответствующего набора.
После того, как набор слайдов завершен, показывается слайд с гиперссылкой на выбранный слайд и удаляется соответствующий значок (достигается с помощью анимации, которая запускается нажатием на значок с гиперссылкой).
В качестве последнего слайда я хотел бы включить слайд для голосования, на котором отображаются все значки наборов слайдов, которые использовались на протяжении всей игры. Если быть точным: если бы использовались три из пяти наборов слайдов, я бы хотел, чтобы слайд для голосования включал только эти три значка вместо всех пяти.
Моя идея заключалась в том, чтобы как-то вызвать анимацию на слайде для голосования в зависимости от того, какая гиперссылка была нажата во время игры.

Я был бы очень признателен за любую идею о том, как мне достичь описанного выше поведения, возможно, также используя совершенно другой подход. Пожалуйста, дайте мне знать, если какая-либо информация отсутствует.

3

1 ответ на вопрос

1
leandriis

Хотя я не смог понять, как создать анимационный триггер на слайде, отличном от самого анимации, я смог решить свою проблему с помощью следующего кода VBA.

Option Explicit Private Const VotingSlideAs Integer = 5 Private Const TargetSlideNumber As Integer = 3   Sub FirstIcon() Dim myPresentation As Presentation Dim mySlide As Slide Dim myImageBox As Shape Dim myTextBox As Shape  Set myPresentation = ActivePresentation Set mySlide = myPresentaion.Slides.Item(VotingSlide) Set myImageBox = mySlide.Shapes.AddPicture("filename", msoCTrue, msoCTrue, 100, 100, 85, 85)  With SlideShowWindows(1).View .GotoSlide (TargetSlideNumber) End With  End Sub 

Приведенный выше код назначается значку на слайде выбора с помощью insert action. После нажатия на значок код вставляет изображение filenameв указанную позицию слайда для голосования и запускает переход к слайду, отмеченному значком TargetSlideNumber(начало соответствующего набора слайдов). Повторение аналогичного кода для всех значков на слайде выбора в конечном итоге приводит к желаемому поведению.