Dans un long diaporama composé de plusieurs parties, on peut naviguer à l'aide d'une liste déroulante qui permettrait depuis n'importe quelle diapo d'atteindre une partie.

Le mieux, pour commencer, est de créer des diaporamas personnalisés correspondant à chaque partie de la présentation :

PowerPoint 2002-2003

Menu Diaporama, Diaporama Personnalisé

PowerPoint à partir de 2007

Onglet Diaporama, bouton Diaporama personnalisé => Diaporamas personnalisés

Il suffit de donner un nom au diaporama et de faire glisser toutes les diapos y afférent.

 

Nous allons maintenant insérer la liste déroulante. Pour y avoir accès depuis toutes les diapositives, on va l'insérer dans le masque :

PowerPoint 2002-2003

Clic droit sur la barre d'outils, Boîte à outils Contrôles

PowerPoint à partir de 2007

Onglet Développeur, Groupe Contrôles

Cliquez sur le contrôle "Zone de liste déroulante" et tracez le contrôle à l'endroit de votre choix. Cliquez dessus avec le bouton droit et choisissez Propriétés pour mettre la liste en forme (choix et taille de la police, couleurs, etc.).

Ensuite, double-cliquez sur la liste pour écrire le code. Vous êtes maintenant dans l'éditeur VBA. collez ces deux macros :

Dans cette première macro, vous mettrez autant de lignes .Additem qu'il y a de parties à afficher dans la liste déroulante.

Private Sub ComboBox1_DropButtonClick()
If ComboBox1.ListCount = 0 Then
With ComboBox1
.AddItem "Partie1"
.AddItem "Partie2"
End With
End If
End Sub

 

Dans cette seconde macro, vous mettrez autant de lignes "If combobox1.value=..." qu'il y a de parties :

Private Sub ComboBox1_Change()
If ComboBox1.Value = "Partie1" Then SlideShowWindows(1).View.GotoNamedShow "Partie1"
If ComboBox1.Value = "Partie2" Then SlideShowWindows(1).View.GotoNamedShow "Partie2"
End Sub


Lancez le diaporama, vous pouvez maintenant utiliser la liste déroulante.

 

Aller plus loin...

Si vous souhaitez qu'un item de votre liste déroulante pointe :

 

  • vers une diapo en particulier, le code sera :

If ComboBox1.Value = "page 3" Then SlideShowWindows(1).View.GotoSlide 3

 

  • vers une autre présentation, le code sera :

If ComboBox1.Value = "mon autre présentation" Then Presentations.Open FileName:="C:\mon_fichier.ppt"

 

  • vers une adresse externe (URL), le code sera :

If ComboBox1.Value = "mon site" Then ActivePresentation.FollowHyperlink Address:="http://faqword.com"