Как обновить активный слайд в слайд-шоу?

Исходя из моего последнего вопроса, я получил правильный код для изменения изображения фигуры.
К сожалению, это не обновляет активную презентацию. Если я закрою презентацию и перезапущу ее, изображение будет изменено, но это изменение должно быть сразу видно.

Это мой код для изменения изображения:

ActivePresentation.SlideShowWindow.View.Slide.Shapes("SolutionA_Image").Fill.UserPicture ("D:\User\SolutionWrong.jpg")

Я нашел способ обновить презентацию, но это позволяет мерцанию презентации.

ActivePresentation.SlideShowWindow.Height = ActivePresentation.SlideShowWindow.Height - 1
ActivePresentation.SlideShowWindow.Height = ActivePresentation.SlideShowWindow.Height + 1

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

Dim lSlideIndex As Long
lSlideIndex = SlideShowWindows(1).View.CurrentShowPosition
SlideShowWindows(1).View.GotoSlide lSlideIndex

Редактировать 2
Я загрузил свой файл: Скачать

2 ответа

Решение

В конце концов я нашел свой ответ в этом посте. Кажется, это ошибка в PowerPoint 2007.

Этот код помогает исправить ошибку:

Dim osld As Slide
'get current slide
Set osld = ActivePresentation.SlideShowWindow.View.Slide
'the next line adds the empty textbox and refreshs the slide
osld.Shapes.AddTextbox msoTextOrientationHorizontal, 1, 1, 1, 1

Я обнаружил эту ошибку в своей Power Point, я добавил эту строку в код, и она исправляет ошибку

Application.SlideShowWindows(1).View.GotoSlide Me.SlideIndex

Другие вопросы по тегам