vba powerpoint выбрать слайд по имени
-
21-12-2019 - |
Вопрос
Я пытаюсь выбрать слайд по имени.Я добавил заголовок через структуру.ниже приведен код, который не работает.«Элемент Айдахо не найден в коллекции слайдов»
ActivePresentation.Slides("Idaho").Select
Решение
Имя слайда и текст в заголовочном заполнете неве нечего делать друг с другом.
Если вы не переименовали его, первый слайд в презентации будет назван «Slide1», второй «слайд2» и так далее.
Если вы конкретно нужны способ найти слайд, Text Text= «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.
ошибка (err.number = -2147188160
).