Renommez les éléments d'un diaporama
But : Renommer les contrôles d'un diaporama
Lorsque vous insérez manuellement des contrôles dans un diaporama, PowerPoint va leur donner un nom (Rectangle 1, Ellipse 6, etc...), donc des noms peu parlants.
Le seul moyen qui existait pour nommer les éléments avec des noms cohérents, étaient d'ajouter les éléments par programmation.
Hors il est utile, lorsque vous voulez faire un peu de VBA, de donner des noms cohérents à des formes placées manuellement sur vos diapositives.
(PowerPoint 2007, permet maintenant de nommer les éléments manuellement).
Le code que je vous propose va :
- Se positionner sur chaque slide (diapositive de votre présentation).
- Parcourir tous les éléments de votre diapositive en les sélectionnant (ce qui vous permettra de les visualiser.
- Une boite de dialogue en haut à gauche vous indiquera le nom de la diapositive, le nom de l'élément.
- Vous n'avez plus qu'à saisir le nouveau nom à la place de l'ancien, puis à valider et ainsi de suite.
Ce code est à utiliser lorsque vous créer votre présentation, et nom en mode diaporama.
- Copiez le code suivant dans un module de l'éditeur VBE (Alt + F11).
- Positionnez le curseur de votre souris à l'intérieur de celui-ci.
- Appuyez sur la touche F5 pour exécuter la routine.
- La fenêtre de PPT passe alors au premier plan, une boite de dialogue en haut à gauche s'affiche, vous n'avez plus qu'à renommer au fur et à mesure.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| Public Sub RenommerShapes()
'=======================================================================================
' Procedure : RenommerShapes
' Auteur : Philippe JOCHMANS - http://starec.developpez.com
' Date : 19/04/2008
' Commentaires : Cette procédure va permettre de renommer les shapes de slides
'=======================================================================================
' ===== déclaration des variables =====
Dim objSld As Slide ' va permettre de parcourir les diapositives du diaporama
Dim objShp As Shape ' va permettre de parcourir les éléments d'une diapositive
Dim strNom As String ' pour récupérer le nouveau nom
Dim strMessage As String ' message qui sera affiché dans la boite de demande du nom
' ===== boucle ======
' on boucle sur l'ensemble des diapositives
For Each objSld In ActivePresentation.Slides
objSld.Select
' on boucle sur l'ensemble des shapes
For Each objShp In objSld.Shapes
' création du message qui indiquera slide + shape
objShp.Select
strMessage = "Elément sélectionné :" & vbCrLf & _
"- Slide : " & objSld.Name & vbCrLf & _
"- Shape : " & objShp.Name
strNom = InputBox(strMessage, "Modification des noms", objShp.Name, 0, 0)
' contrôle du nom
' si on supprime le nom, on reprend l'ancien
If strNom = "" Or IsNull(strNom) Then
strNom = objShp.Name
End If
objShp.Name = strNom
Next objShp
Next objSld
End Sub |
Starec