Re : VBA dans Powerpoint : créer un sommaire automatique
On m'a répondu sur un autre forum
La solution :
Sub TablesMatière()
On Error Resume Next
Dim SI As Slide, tm As Slide, z As TextRange, NSI As Single
Dim t As String
Dim Pres As Presentation
Set Pres = PowerPoint.ActivePresentation
Set SI = Pres.Slides(2)
SI.Shapes.Title.TextFrame.TextRange.Text = "Sommaire"
Set z = SI.Shapes(2).TextFrame.TextRange
' Efface l'ancien sommaire
z.Text = ""
For NSI = 3 To Pres.Slides.Count
'récupère le texte du titre de la diapo d'index NSI
t = Pres.Slides(NSI).Shapes(1).TextFrame.TextRange.Text
'Affiche à la fin du texte la valeur de t et lui rajoute un retour à la ligne
z.Paragraphs.InsertAfter (t & Chr(13))
'Je rajoute un lien qui pointe sur le slide correspondant
z.Paragraphs(z.Paragraphs.Count).ActionSettings(ppMouseClick).Hyperlink.SubAddress = Pres.Slides(NSI).SlideID & ",,"
Next NSI
End Sub