Il n'y a pas de sommaire automatique dans PowerPoint comme dans Word. En effet, la fonction Diapositive de résumé qui existait autrefois a été supprimée depuis la version 2007. Il existe toutefois des solutions : une macro, et la diapositive de résumé
Première solution : la macro
la macro ci-dessous insère une nouvelle diapositive et lui donne le titre de Sommaire. Elle récupère le titre de chaque diapositive qui en comporte un, l'ajoute à la diapositive de sommaire, puis ajoute des liens hypertextes vers les titres de ces diapos si vous le souhaitez.
Le reste sera manuel : si l'on ne souhaite pas faire figurer tel ou tel titre, il faudra le supprimer.
Cette macro reste donc à personnaliser selon vos besoins, selon votre modèle, selon votre présentation. Par exemple, on peut prévoir de faire un sommaire basé sur la sélection, on peut prévoir d'utiliser une disposition précise, etc. On peut aussi prévoir de proposer de supprimer le sommaire existant, etc. À vous de compléter.
Sub sommaire()
'macro écrite par m@rina
Dim Diapo As Slide
Dim titre As Shape
Dim texte As String
Dim texte_ajout As TextRange
Dim texte_sommaire As TextRange
Dim ligne_sommaire As TextRange
Dim y As Byte
' ajoute une diapo en début de présentation avec
'la disposition de mise en forme n°2 du masque
ActivePresentation.Slides.Add Index:=1, Layout:=ppLayoutText
With ActivePresentation.Slides(1)
.Shapes(1).TextFrame.TextRange = "Sommaire"
Set texte_ajout = .Shapes(2).TextFrame.TextRange
End With
For y = 2 To ActivePresentation.Slides.Count
Set Diapo = ActivePresentation.Slides(y)
'si la diapo a un titre
If Diapo.Shapes.HasTitle Then
Set titre = Diapo.Shapes.Title
texte_ajout = texte_ajout & titre.TextFrame.TextRange.Text & Chr(13)
End If
Next y
'ajout de liens aus items du sommaire
lien = MsgBox("Voulez-vous ajouter des liens hypertextes à votre sommaire ?", vbYesNo, "Liens")
If lien = vbNo Then Exit Sub
Set texte_sommaire = ActivePresentation.Slides(1).Shapes(2).TextFrame.TextRange
For y = 2 To ActivePresentation.Slides.Count
Set Diapo = ActivePresentation.Slides(y)
If Diapo.Shapes.HasTitle Then
Set titre = Diapo.Shapes.Title
texte = titre.TextFrame.TextRange.Text
ActivePresentation.Slides(1).Select
Set ligne_sommaire = texte_sommaire.Find(FindWhat:=texte)
'MsgBox texte
With ligne_sommaire
.ActionSettings(ppMouseClick).Hyperlink.SubAddress = Diapo.SlideID _<br>& "," & Diapo.SlideIndex & "," & texte
End With
End If
Next
End Sub
Deuxième soluton : utilisation du zoom de résumé
Ces dernières versions proposent une nouvelle fonctionnalité qui permet d'ajouter automatiquement une diapositive de synthèse, permettant, lors du diaporama, de zoomer vers la partie correspondante, et d'afficher les diapos de cette partie, comme avec un diaporama personnalisé.
Vous trouverez la fonction sous l'onglet Insérer, groupe Liens, commande Zoom de résumé.
Si la présentation de cette solution ne vous convient pas, et si vous souhaitez un sommaire classique, voyez la solution macro.