' -------------------------------------------------------------------------------- ' Hace una slide en la que te pone un índice con sus enlaces ' -------------------------------------------------------------------------------- Sub AgendaLinks() Dim oSld As Slide Dim oShp As Shape Dim oAgenda As TextRange Dim x As Integer ' Añade un slide al inicio de la presentación ActivePresentation.Slides.Add 1, ppLayoutText With ActivePresentation.Slides(1) .Shapes(1).TextFrame.TextRange = "Índice" Set oAgenda = .Shapes(2).TextFrame.TextRange End With oAgenda = "" ' por cada slide For Each oSld In ActivePresentation.Slides ' saca el titulo If oSld.Shapes.HasTitle Then Set oShp = oSld.Shapes.Title If oShp.TextFrame.TextRange.Text = "" Then oAgenda = oAgenda & "Slide " & oSld.SlideIndex & Chr(13) Else oAgenda = oAgenda & oShp.TextFrame.TextRange.Text & Chr(13) End If Else oAgenda = oAgenda & "Slide " & oSld.SlideIndex & Chr(13) End If Next oSld ' Añade enlace For x = 1 To oAgenda.Sentences.Count Set oSld = ActivePresentation.Slides(x) With oAgenda.Sentences(x).ActionSettings(ppMouseClick).Hyperlink .Address = "" .SubAddress = oSld.SlideID & "," & oSld.SlideIndex & "," & oAgenda.Sentences(x).Text End With Next x ' Borra la primera porque es la del índice que hemos creado oAgenda.Sentences(1).Delete End Sub