簡體   English   中英

VBA Powerpoint按名稱選擇幻燈片

[英]vba powerpoint select a slide by name

我正在嘗試按名稱選擇一張幻燈片。 我已經通過大綱添加了標題。 下面是無法正常工作的代碼。 “幻燈片集合中未找到愛達荷州項目”

ActivePresentation.Slides("Idaho").Select

幻燈片的名稱和標題占位符中的文本彼此無關。

除非重命名,否則演示文稿中的第一張幻燈片將被命名為“ Slide1”,第二張幻燈片將被命名為“ Slide2”,依此類推。

如果您特別需要一種方法來查找標題文本=“ Idaho”的幻燈片,則需要編寫一個函數來搜索演示文稿中的所有幻燈片,並返回找到的第一個符合您條件的幻燈片。 例如:

Sub TestMe()
    Dim oSl As Slide
    Set oSl = FindSlideByTitle("idaho")

    If Not oSl Is Nothing Then
        MsgBox "Found your title on slide " & CStr(oSl.SlideIndex)
    End If

End Sub
Function FindSlideByTitle(sTextToFind As String) As Slide
    Dim oSl As Slide

    For Each oSl In ActivePresentation.Slides
        With oSl.Shapes.Title.TextFrame
            If .HasText Then
                If UCase(.TextRange.Text) = UCase(sTextToFind) Then
                    Set FindSlideByTitle = oSl
                End If
            End If
        End With
    Next

End Function

恢復一個老問題,但我想提出這個問題。

雖然ActivePresentation.Slides("MySlideName").Select無法正常工作,但在PPT 2010中對我確實有效:

Dim PPTObj As PowerPoint.Application
Set PPTObj = New PowerPoint.Application
Dim PPTClinic As PowerPoint.Presentation
Set PPTClinic = PPTObj.Presentations.Open(FileName:="Your File Name Here")
PPTClinic.Slides("MySlideName").Select

當然,這假定有一張名為“ MySlideName”的幻燈片。 您的代碼將必須妥善處理Item MySlideName not found in the Slides collection.Item MySlideName not found in the Slides collection. 錯誤( err.number = -2147188160 )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM