52148957 发表于 2016-4-12 12:34:04

我的doEvent为什么很难起作用?

Sub main()
Dim start, pastTime
ActivePresentation.SlideMaster.HeadersFooters.Footer.Text = "00:00:00"
start = Now
ActivePresentation.SlideShowSettings.Run
pastTime = Format(Now - start, "hh:mm:ss")
Do While pastTime < "00:00:10"
pastTime = Format(Now - start, "hh:mm:ss")
Sleep 1000
ActivePresentation.SlideMaster.HeadersFooters.Footer.Text = pastTime
' SlideShowWindows(Index:=1).View.Next
DoEvents ' 将控制让给其他程序。
Loop
SlideShowWindows(Index:=1).View.Exit
End Sub
大家拷贝到ppt_vba中就能运行,但是我放映时候为什么很难翻页?
恳请高手指点!

user_ccsvrvam 发表于 2016-4-12 14:07:48

忘了还要声明
Public Declare Sub Sleep Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Long)

user_nghdq 发表于 2016-4-12 15:03:08

VB,高级应用在这里没什么市场。

modao520 发表于 2016-4-12 15:29:08

vb 在ppt中本来就没有什么市场
不知道sleep 语句在你代码中起什么作用,但是它妨碍了系统接收mouseclick事件(sleep期间不能接收和处理事件),所以会出现翻叶困难的现象。
页: [1]
查看完整版本: 我的doEvent为什么很难起作用?