Pergunta

Eu estou tentando selecionar um slide por nome.Eu adicionei um título através da estrutura de tópicos.abaixo está o código que não está funcionando."item Idaho não encontrado na apresentação da coleção"

ActivePresentation.Slides("Idaho").Select
Foi útil?

Solução

A apresentação do nome e o texto no espaço reservado para título nave nada a ver um com o outro.

A menos que você tenha mudado, o primeiro slide da apresentação vai ser chamado de "Slide1", o segundo "Slide2" e assim por diante.

Se você, especificamente, precisa de uma forma para localizar o slide cujo texto do título = "Idaho", você precisa escrever uma função para procurar todos os slides da apresentação e retornar o primeiro que encontrar que atenda aos seus critérios.Por exemplo:

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

Outras dicas

Reviver uma velha pergunta, mas eu queria jogar isso em.

Enquanto é possível que ActivePresentation.Slides("MySlideName").Select não funciona, isso não funciona para mim em 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

Isso, claro, pressupõe-se que existe uma apresentação chamada "MySlideName".Seu código vai ter de lidar com a processar correctamente o Item MySlideName not found in the Slides collection. erro (err.number = -2147188160).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top