Я делаю свой первый макрос Powerpoint 2007, и у меня возникают проблемы с его зависанием, и я не могу перейти к следующему слайду.Я могу нажать ESCAPE, чтобы выйти из слайд-шоу, но нажатие клавиши пробела или чего-либо еще не перейдет к следующему слайду.Через некоторое время просто вылетает.Я пришел из C ++ / Java, поэтому думаю, что это просто что-то базовое, чего мне не хватает.
По сути, я пытаюсь сделать встречный слайд, который считает дни / минуты / секунды от определенной даты.Когда слайд загружается, я хочу, чтобы он в реальном времени показывал, сколько времени прошло с этой даты.Я пропустил бесконечный цикл, который прекрасно работает для обновления времени, но затем не позволяет перейти к следующему слайду.
Вот мой код:
Sub OnSlideShowPageChange(ByVal SSW As SlideShowWindow)
'If SSW.View.CurrentShowPosition = 3 Then
Do While SSW.View.CurrentShowPosition = 3 ' infinite loop
Dim currentSlide As Integer
currentSlide = SSW.View.CurrentShowPosition
Dim startDate As Date
Dim currentDate As Date
Dim sngDiff As Single
Dim lngDays As Long
Dim lngHours As Long
Dim lngMinutes As Long
Dim lngSeconds As Long
startDate = #7/22/2011 2:00:00 PM#
currentDate = Now
sngDiff = currentDate - startDate
lngDays = CLng(sngDiff)
sngDiff = sngDiff - lngDays
lngHours = Hour(sngDiff)
lngMinutes = Minute(sngDiff)
lngSeconds = Second(sngDiff)
With ActivePresentation.Slides(currentSlide)
With .Shapes(2)
.TextFrame.TextRange.Text = "It has been:" & lngDays & " Days " & lngHours & " hours " & lngMinutes & " minutes " & lngSeconds & " Seconds"
End With
End With
DoEvents
Loop
End Sub
ДелатьМне нужно послушать какое-нибудь нажатие кнопки, чтобы остановить этот бесконечный цикл, или как мне это сделать?
Спасибо.