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 :
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 :
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"