PPT VBA常用语句
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
PPT VBA常用语句
结束放映的语句
SlideShowWindows(Index:=1).View.Exit
关闭当前窗口
Application.Windows.Item(1).Close
关闭PPT
Application.Quit
在ppt中用VBA实现多个文档的打开和关闭
Sub Ctest()
//关闭当前文档
ActivePresentation.Close
//打开另外一个文档
Presentations.Open "C:\Documents and Settings\Administrator\桌面\FILE 2.ppt"
//如果你要新打开的文档开始播放的话,加上下面的一句
ActivePresentation.SlideShowSettings.Run
End Sub
跳到某一张幻灯片:
With SlideShowWindows(1).View
.GotoSlide 2
End With
文本框控件:
Slide5.TextBox1.Text=”888”
文本框:
Slide1.Shapes("Text Box 7").TextFrame.TextRange.Text = "999999"
图形元件:
Slide1.Shapes("Oval 9").Visible = msoFalse
图片元件
ActivePresentation.Slides(1).Shapes("Picture 29").Height = 0
ActivePresentation.Slides(1).Shapes("Picture 29").Width = 0
一、OnSlideShowPageChange宏的使用
下面我们来研究一下这两个宏的功能与运行的条件。先来看OnSlideShowPageChange 宏,我们新建一个演示文稿,并把PowerPoint宏的安全级别设置为启用全部宏,在演示文稿中添加几张幻灯片,为便于测试说明,从第一张幻灯片开始,我们按顺序给它们输入数字编号"1、2、3、4……",再按Alt+F11快捷键启动VBA编辑器,在其中插入一个模块,向代码窗口中输入如下代码:
Sub OnSlideShowPageChange()
MsgBox "I love you, PowerPoint."
End Sub
点击"保存"按钮,保存文档,文件名如Test.ppt(PowerPoint 2007中为Test.pptm),返回幻灯片编辑视图,按F5键进行放映,我们首先会看到一个显示"I love you, PowerPoint."的消息框,点击确定后,放映第一张幻灯片,再点击鼠标左键,放映到第二张,也会出现同样的消息框,后面各张的放映的情形也是这样。这说明我们的宏在放映时及放映过程中被正确地执行了,还说明这个宏是在放映时就自动运行,以后只要有幻灯片切换都会被激发而运行。根据它的特性,只要是在幻灯片放映开始时就要完成的任务,或是放映过程中需要不断重复做的处理都可以交给它来完成。同时,这个宏也很适合用来对PowerPoint放映环境进行初始化设置,不过应做一下改进,因为初始化只需要一次,反复做会浪费系统资源,改进后的示例代码如下:
Sub OnSlideShowPageChange()
If ActivePresentation.SlideShowWindow.View.CurrentShowPosition = 1 Then
MsgBox "I love you, PowerPoint."
End If
End Sub
再保存后运行,怎么样,是不是只在放映开始时出现一次消息框,以后幻灯片再切换就看不到消息框了,我们的目的达到了,今后在实际开发中只是放映过程中要反复执行的代码块就放在Sub OnSlideShowPageChange()和End Sub之间,即代替掉"If Then End If"语句块,凡是开始放映时只需运行一次的代码块就放在If ActivePresentation.SlideShowWindow.View.CurrentSho wPosition = 1 Then和End If之间,即把MsgBox "I love you,PowerPoint."语句替换成我们自己的代码块就行了。
二、OnSlideShowTerminate宏的使用
现在我们再来研究一下OnSlideShowTerminate宏的用法,还是用前面建立的PowerPoint 实列文档Test.ppt,打开文档后在VBA编辑器窗口中输入下面的代码:
Sub OnSlideShowTerminate()
MsgBox "Good bye, and take care!"
End Sub
保存后返回PowerPoint幻灯片编辑视图,按F5进行放映,在放映开始出现显示"I love you, PowerPoint."消息框,这是OnSlideShowPageChange宏的功劳,前面已讲过,点"
确定"后继续播放直至结束,我们又会看到一个写着"Good bye, and take care!"的消息框,现在是OnSlideShowTerminate宏在起作用。由此我们可以看出,OnSlideShowTerminate宏只在结束幻灯片放映时被激活发挥作用,用它我们可以处理放映完成后的环境清理工作,只要把我们的相关代码放在Sub OnSlideShowTerminate()和End Sub中间替换掉MsgBox "Good bye, and take care!"语句就OK了。