PowerPoint VBA中如何实现ThisPresentation

Private Sub CommandButton1_Click()
WebBrowser1.Navigate ("E:\X.png")
End Sub

Sub OnSlideShowPageChange()
WebBrowser1.Navigate2 "http://www.baidu.com"
End Sub

众所周知,在Excel VBA中有ThisWorkbook,在Word VBA中有ThisDocument,但是不知道为啥PowerPoint VBA并不提供ThisPresentation,对于加载宏工具来说,经常需要引用工具所在的Presentation对象,既然微软官方没有提供这个对象,那么咱们自己动手丰衣足食。

示例代码如下。

Function ThisPresentation() As Presentation
    Dim p As Presentation
    For Each p In Presentations
        If p.Name = "MyTools.ppam" Then
            Set ThisPresentation = p
            Exit Function
        End If
    Next
End Function

代码解析:

第3~8行代码使用For语句循环遍历所有Presentation对象。
第4行代码判断Presentation对象的Name属性是否为指定值,如果满足条件,第5行代码将对象引用作为返回值,第6行代码结束程序执行。

使用起来也非常简单:

Sub demo()
    Dim objPre As Presentation
    Set objPre = ThisPresentation
    MsgBox objPre.Name
End Sub

 

posted @   多见多闻  阅读(149)  评论(0编辑  收藏  举报
(评论功能已被禁用)
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示